HDU 4006 The kth great number
来源:互联网 发布:lr推荐算法 编辑:程序博客网 时间:2024/05/22 16:45
这题的关键在于理解:要求第K大数,那么我们只保留前K个大数,并且按降序排列。这也就是说每加入一个数就找到这个数的位置。
然后将大于K个元素之外的数删除。
利用优先级队列就可以很好的做到这一点。
下面的代码中用到了两种优先级队列的写法。注释的和非注释的都可。并且时间都是62MS。
AC代码:
#include<iostream>#include<queue>using namespace std;/*struct node{int tmp;friend bool operator < (const node a,const node b){return a.tmp>b.tmp;}};*/int main(){int n,k,i,num;//node num; char option;while(scanf("%d%d",&n,&k)!=EOF){//priority_queue<node> myQueue;priority_queue<int,vector<int>,greater<int> > myQueue;for(i=1;i<=n;i++){scanf(" %c",&option);if(option=='I'){scanf("%d",&num);myQueue.push(num);if(myQueue.size()>k)myQueue.pop();}elseprintf("%d\n",myQueue.top());}}return 0;}
- HDU--4006(The kth great number)
- HDU 4006 The kth great number
- hdu 4006 The kth great number
- HDU 4006 The kth great number
- hdu 4006 The kth great number
- HDU 4006 The kth great number
- hdu 4006 The kth great number
- hdu 4006 The kth great number
- hdu 4006 The kth great number
- hdu 4006 The kth great number treap
- HDU 4006 - The kth great number
- HDU 4006 The kth great number
- hdu 4006 The kth great number
- hdu 4006 The kth great number
- hdu 4006 The kth great number/SBT
- hdu 4006 The kth great number
- HDU 4006 The kth great number
- HDU 4006 The kth great number
- cisco mds 9124 cli学习【1】
- Tomcat Can't load AMD 64-bit .dll on a IA 32
- 转载:java泛型
- iPhone OS编程指南(一)
- 增加虚拟机可以使用的最大内存
- HDU 4006 The kth great number
- 二叉查找树的基类实现(下)
- 从这里开始
- iPhone OS编程指南(三)
- spring dao到实体的映射
- textarea 字数统计
- python 单元测试 使用摘要
- Vim配置文件(全平台可用)2012-05-01版
- GDI+ 通过流方式操作图片文件,避免文件权限冲突