HDU
来源:互联网 发布:汉语言文学专业 知乎 编辑:程序博客网 时间:2024/06/05 21:01
题目链接:HDU - Hints of sd0061
小于 b
数组的最坏情况是斐波拉契数列
STL 中 nth_element(first,first+n,end)
是将第 n
小的数放在数组中的第 n
个位置,且之前的都比 a[n]
小,之后的都比 a[n]
大。
然后可以用类似快排的方法分治处理。。
#include<bits/stdc++.h>#define fi first#define se secondusing namespace std;unsigned x,y,z;const int N=1e7+7;typedef pair<unsigned,int> pii;int n,m;unsigned a[N],ans[107];unsigned rng61() { unsigned t; x ^= x << 16; x ^= x >> 5; x ^= x << 1; t = x; x = y; y = z; z = t ^ x ^ y; return z;}pii b[107];int main(){ int T=1; while(cin >> n >> m >> x >> y >> z) { for(int i=0;i<n;++i) a[i]=rng61(); for(int i=0;i<m;++i) cin >> b[i].fi,b[i].se=i; sort(b,b+m); b[m].fi=n;b[m].se=m; for(int i=m-1;i>=0;--i) { if(b[i].fi==b[i+1].fi) { ans[b[i].se]=ans[b[i+1].se]; continue; } nth_element(a,a+b[i].fi,a+b[i+1].fi); ans[b[i].se]=a[b[i].fi]; } printf("Case #%d: ",T++); for(int i=0;i<m;++i) cout << ans[i] << (i==m-1?'\n':' '); } return 0;}
阅读全文
0 0
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- hdu-
- hdu
- hdu
- hdu
- HDU
- matlab中的正则表达式
- hadoop集群搭建
- 关于移动端rem适配问题
- 结构体中特殊定义int a:5
- CVPR 2017最佳论文解读:密集连接卷积网络DenseNet
- HDU
- hibernate动态表名
- nio简单demo,帮助理解io与nio区别
- Linux环境下通过pdb调试Python程序
- 自己封装一个插件化框架
- OSI模型与TCP/IP参考模型
- NYOJ-括号匹配(二)
- 喷水装置一(贪心算法,南阳oj ,6)
- 数据库事务的四大特性以及事务的隔离级别