HDU-1908-Double Queue
2014-08-10 15:21
302 查看
在博弈专项练习做到这个题~ 其实就是银行排队服务的一个题,然后这个题有2种处理方式,1代表请求,2代表现在处理排队队列中优先级最高的,3代表现在处理排队队列中优先级最低的。我用的STL vector+二分查找的
代码:
代码:
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<vector> using namespace std; const int maxn=1e6+1000; struct Request { int id; int val; Request(int sid,int sval) { id=sid; val=sval; } bool operator < (const Request &a)const { return val<a.val; } }; vector<Request> r; vector<Request>::iterator it; int main() { while(1) { int op; scanf("%d",&op); if(op==0) break; if(op==1) { int id,w; scanf("%d%d",&id,&w); it=lower_bound(r.begin(),r.end(),Request(id,w)); r.insert(it,Request(id,w)); } else if(op==2) { if(r.size()==0) { printf("0\n"); continue; } printf("%d\n",r[r.size()-1].id); r.erase(r.begin()+r.size()-1); } else { if(r.size()==0) { printf("0\n"); continue; } printf("%d\n",r[0].id); r.erase(r.begin()); } } return 0; }
相关文章推荐
- HDU 1908 Double Queue
- HDU--1908Double Queue【STL--map】
- hdu 1908 Double Queue (map)
- HDU 1908 Double Queue
- HDU - 1908——Double Queue
- HDU 1908 Double Queue(set)
- HDU 1908 Double Queue
- hdu 1908 Double Queue (map)
- POJ 3481 & HDU 1908 Double Queue (map运用)
- HDU 1908 Double Queue(set)
- POJ 3481 & HDU 1908 Double Queue (map运用)
- acm hdu 1908 Double Queue
- hdu 1908
- hdu 1908 : Double Queue
- hdu 1908数据结构水题
- 【HDOJ】1908 Double Queue
- hdu 1908 double queues
- hdu_1908_map知识补全_银行排队问题
- HDOJ 题目1908Double Queue(STL)
- HDU 3342