Quick actions

cmd+k|ctrl+k

Navigation

Languages

Sort a k sorted array (Flipkart Interview)

Snippet info

Language

Cpp

Visibility

public

Author

amangoyal1727

Created

2021-01-11T19:29:37Z

Updated

2021-01-11T19:29:37Z

#include <iostream>
#include <queue>
#include <algorithm>
#include <vector>
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];
    }
    
    vector<int> B;
    
    //Min-Heap
    priority_queue<int, vector<int>, greater<int>> minh;
    
    for(int i=0 ; i<n; i++){
        minh.push(A[i]);
        if(minh.size()>k){
            B.push_back(minh.top());
            minh.pop();
        }
    }
    
    for(int i=n-k ; i<n; i++){
        B.push_back(minh.top());
        minh.pop();
    }
    
    for(int i=0 ; i<n; i++){
        cout<<B[i]<<" ";
    }
    
}
INFO