zoukankan      html  css  js  c++  java
  • HDU4006 The kth great number [堆]

      水题。虽然求第K大值的方法有很多种,各种树都可以,但这题只要一个元素个数固定的堆就可以了。。。。

      

    #include <stdio.h>
    #include <string.h>
    #include <queue>
    #define MAXN 1000000
    
    int n,k,num;
    char op[5];
    int main(){
    //freopen("test.in","r",stdin);
        while(scanf("%d%d",&n,&k)!=EOF){
            std::priority_queue<int,std::vector<int>,std::greater<int> > q;
            for(int i=0,ins=0;i<n;i++){
                scanf("%s",op);
                if(op[0]=='Q'){
                    printf("%d\n",q.top());
                }else{
                    scanf("%d",&num);
                    q.push(num);
                    ins++;
                    if(ins>k)q.pop();
                }
            }
        }
        return 0;
    }
  • 相关阅读:
    第七单元
    第六单元
    第五单元
    第四单元
    第三章
    第二单元
    第一单元
    单词
    机器学习和模式识别的区别
    TODO-项目
  • 原文地址:https://www.cnblogs.com/swm8023/p/2659210.html
Copyright © 2011-2022 走看看