[백준/C++] 2075번 N번째 큰 수

최대 1 분 소요

1.문제 링크

2075



2. 풀이 전 계획과 생각

  • 최소힙 자료구조 이용



3. 풀이

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

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    
    int n; cin>>n;
    priority_queue< int, vector<int>, greater<int> > q; // min heap
    
    for(int i=0;i<n*n;i++){
        int temp; cin>>temp;
        q.push(temp);
        if(q.size()==n+1) q.pop();
    }
    
    cout<<q.top();
}

메모리 제한이 12MB가 있기 때문에 q의 사이즈가 n+1인 경우 pop을 계속 해줘야 한다.



4. 풀이하면서 고민했던 점



5. 문제를 풀고 알게된 개념 및 소감