sgu211:Strange Counter(构造)
来源:互联网 发布:java构造方法特点 编辑:程序博客网 时间:2024/06/10 02:39
Orz 想出题解的神犇。。。
其实思想挺简单,就是保证没有连续的
假设当前加上
这样最大单词操作次数
Ac Code:
#include <cstdio>#include <set>using namespace std;const int MAXN = 1009;const int INF = 1e9;int n, m;int v[MAXN];set<int> zero, two;set<int>::iterator t0, t2;void update(int p, int add){ if(v[p] == 0) zero.erase(p); if(v[p] == 2) two.erase(p); v[p] += add; printf(" %d %d", p, v[p]); if(v[p] == 0) zero.insert(p); if(v[p] == 2) two.insert(p);}int main(){ scanf("%d%d", &n, &m); for(int i = 0; i <= n; ++i) zero.insert(i); two.insert(n); while(m--) { int p; scanf("%d", &p); t2 = two.upper_bound(p); t0 = zero.upper_bound(*t2); if(p >= *(--t0)) { printf("3"); update(p, 1); update(*t2, -2); update(*t2+1, 1); } else if(v[p] > 0) { printf("2"); update(p, -1); update(p+1, 1); } else { printf("1"); update(p, 1); } puts(""); } return 0;}
0 0
- sgu211:Strange Counter(构造)
- counter
- counter
- Counter
- HDU 1548 A strange lift(构造+最短路Dijkstra)
- Checkout Counter
- My Counter
- FPS counter
- JavaScript counter
- pulse counter
- Line counter
- hadoop counter
- collections.Counter()
- collections Counter
- Hbase counter
- mapreduce counter
- Hadoop Counter
- CSS -Counter
- GPUIMAGE说明
- 线程同步
- Linux 目录详解
- 8-3简要说明RFID系统的时隙ALOHA算法的工作过程
- 真正学习Java的第一天
- sgu211:Strange Counter(构造)
- 【tcp-ip学习总结】基础UDP实现的简单通信功能小程序
- XCODE6 提交至 App Store
- 八大排序算法之三简单选择排序(c语言)
- 教你如何迅速秒杀掉:99%的海量数据处理面试题(转自July)
- 推荐系统-从入门到精通
- [刷题]Remove Duplicates from Sorted List II
- 【Java二十周年】春风十里,不如你
- 裴蜀定理