[백준] 2075 C++
#include <iostream>
#include <queue>
#include <vector>
using namespace std;
// N번째 큰 수
int main() {
ios::sync_with_stdio(0);
// 오름차순 우선순위 큐
priority_queue<int, vector<int>, greater<int>> pq;
int N, n;
cin >> N;
// 자꾸 틀리고 메모리 초과가 나서 N번째로 큰 수가 아니면
// 나머지 수는 필요가 없기 때문에 버리기로 함
for(int i=0; i<N*N; i++){
cin >> n;
if(pq.size() < N) pq.push(n);
else { // N크기만큼 큐가 찼다면
// 출력할 결과와 비교해 그 수보다 크다면 이미 있던 수를 꺼내고 새 수를 넣음
if(pq.top() < n) { pq.pop(); pq.push(n); }
}
}
cout << pq.top() << '\n';
return 0;
}
Author And Source
이 문제에 관하여([백준] 2075 C++), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dbsrud11/백준-2075-C저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)