标签:the kth great number hdoj4006 优先队列 队列 hdoj
8 3 I 1 I 2 I 3 Q I 5 Q I 4 Q
1 2 3HintXiao Ming won‘t ask Xiao Bao the kth great number when the number of the written number is smaller than k. (1=<k<=n<=1000000)./* 这个题比较容易想到优先队列,只需 简单进出即可,但要保持数量!(关键) */ #include<stdio.h> #include<string.h> #include<iostream> #include<queue> #include<algorithm> using namespace std; int main() { int n,m; while(scanf("%d %d",&n,&m)!=EOF) { priority_queue<int, vector<int>, greater<int> >q; //建立优先队列,从小到大 int a,b; char s[10]; while(n--) { scanf("%s",s); if(s[0]=='I') { scanf("%d",&a); q.push(a); if(q.size()>m)//当队列长队超过m时,弹出队首,使队保持m个元素 { q.pop() ; } } else if(s[0]=='Q') { b=q.top(); printf("%d",b); printf("\n"); } } } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
hdoj 4006 The kth great number
标签:the kth great number hdoj4006 优先队列 队列 hdoj
原文地址:http://blog.csdn.net/zhangxiaoxiang123/article/details/47752691