设为首页 加入收藏

TOP

hdu 2871 Memory Control 伸展树区间合并(二)
2014-11-23 21:34:22 来源: 作者: 【 】 浏览:10
Tags:hdu 2871 Memory Control 伸展 区间 合并
ile (~scanf("%d%d", &n, &m)) { tree.build(); vec.clear(); while (m--) { scanf("%s", op); if (op[0] == 'R') { vec.clear(); puts("Reset Now"); tree.update(1, n, 1); continue; } scanf("%d", &x); if (op[0] == 'N') { if (tree.msum[1] < x) { puts("Reject New"); continue; } int l = tree.find(x); printf("New at %d\n", l); int r = l + x - 1; tree.update(l, r, 0); pii tp = mp(l, r); j = lower_bound(vec.begin(), vec.end(), tp) - vec.begin(); vec.insert(vec.begin()+j, tp); } else if (op[0] == 'G') { if ((int) vec.size() < x) puts("Reject Get"); else printf("Get at %d\n", vec[x - 1].first); } else if (op[0] == 'F') { j = upper_bound(vec.begin(), vec.end(), mp(x, n + 3)) - vec.begin() - 1; if (j == -1 || vec[j].first > x || vec[j].second < x) //if(j == -1) puts("Reject Free"); else { printf("Free from %d to %d\n", vec[j].first, vec[j].second); tree.update(vec[j].first, vec[j].second, 1); vec.erase(vec.begin() + j); } } } puts(""); } return 0; }


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇核心动画中的动画组和转场动画 下一篇hdu 1054 Strategic Game(tree dp..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)
·使用华为开发者空间 (2025-12-27 04:19:24)
·Getting Started wit (2025-12-27 03:49:24)
·Ubuntu 上最好用的中 (2025-12-27 03:49:20)