Quick actions

cmd+k|ctrl+k

Navigation

Languages

K Largest elements using heap

Snippet info

Language

Cpp

Visibility

public

Author

amangoyal1727

Created

2021-01-11T02:07:15Z

Updated

2021-01-11T02:07:15Z

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

int main() {
    
    int k;
    cin>>k;
    
    int n;
    cin>>n;
    
    int A[n];
    
    for(int i =0; i<n ; i++){
        cin>>A[i];
    }
    
    priority_queue<int, vector<int>, greater<int>> minh;
    
    for(int i=0 ;i<n; i++){
        minh.push(A[i]);
        
        if(minh.size()>k){
            minh.pop();
        }
    }
    
    cout<<minh.top()<<" ";
    minh.pop();
    cout<<minh.top()<<" ";
    minh.pop();
    cout<<minh.top()<<" ";
    
}
INFO