题解 | #查找第K小数#

查找第K小数

https://www.nowcoder.com/practice/204dfa6fcbc8478f993d23f693189ffd

#include <functional>
#include <iostream>
#include <queue>
using namespace std;

int main() {
    int n;
    while(cin>>n){
        priority_queue<int,vector<int>,greater<int>> smallerHeap;
        for(int i=0;i<n;i++){
            int a;
            cin>>a;
            smallerHeap.push(a);
        }
        int o;
        cin>>o;
        int k=1;
        int kmin=smallerHeap.top();
        smallerHeap.pop();
        while(k<o){
            if(kmin==smallerHeap.top()){
                smallerHeap.pop();
                continue;
            }
            else{
                k++;
                kmin=smallerHeap.top();
                smallerHeap.pop();
            }
        }
        cout<<kmin<<endl;

    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务