ZOJ 3633 Alice's present (STL set)
2013-05-10 14:37
344 查看
题意:给你n个数的数列a
和m个query, 对于每个query,输入l和r,从a[r] a[r-1]....a[l]遍历,输出第一个重复出现的a[i],若没有,输出“OK”。
这个题有比较复杂的线段树解法,不过用STL的set可以3000+ms水过。。。
和m个query, 对于每个query,输入l和r,从a[r] a[r-1]....a[l]遍历,输出第一个重复出现的a[i],若没有,输出“OK”。
这个题有比较复杂的线段树解法,不过用STL的set可以3000+ms水过。。。
#include<iostream> #include<cstdio> #include<set> using namespace std; const int maxn = 500500; int n, m, a[maxn], l, r; set<int> s; int main() { while(~scanf("%d", &n)) { for(int i=1; i<=n; i++) scanf("%d", &a[i]); scanf("%d", &m); while(m--) { s.clear(); scanf("%d%d", &l, &r); int flag = 0; for(int i=r; i>=l; i--) { if(!s.count(a[i])) s.insert(a[i]); else { flag = i; break; } } if(!flag) puts("OK"); else printf("%d\n", a[flag]); } puts(""); } return 0; }
相关文章推荐
- [ZOJ 3633]Alice's present 离线分块/线段树
- ZOJ 3633 Alice's present
- ZOJ:3633 Alice's present(离线处理)
- zoj 3633 Alice's present(线段树)
- ZOJ 3633 Alice's present(线段树)
- zoj 3633 Alice's present
- zoj 3633 Alice's present
- Zoj 3633 Alice's present
- zoj(3633)Alice‘s present
- ZOJ-3633-Alice's present
- ZOJ 3633 Alice's present
- ZOJ 3633 Alice's present【线段树】
- zoj 3633 Alice's present
- zoj 3633 Alice's present(离线+线段树)
- zoj 3633 Alice's present
- ZOJ 3633 Alice's present (脑洞题)
- ZOJ-3633-Alice's present
- zoj 3633 Alice's present 线段树
- zoj 3726& hdu 4791 Alice's Print Service
- zoj 3363 线段树维护最大值 Alice's present