👩🏻💻 문제링크
https://www.acmicpc.net/problem/2075
✍️ 아이디어
1. 문제 이해
- 결국엔 숫자 나열해서 N번째 숫자 구해라는거임
2. 시간 제한이 1s이므로 n2 까지의 연산이 가능하다, 메모리 제한이 12mb 이므로 1500*1500*4byte의 값을 다 저장 못하므로 5개 자리 만들어서 입력 받을때 마다 최후의 5인이 결정된다
✍️소스코드
#include <iostream>
#include <queue>
using namespace std;
int main()
{
cin.tie(NULL);
ios::sync_with_stdio(false);
int N; cin>>N;
priority_queue <int, vector<int>, greater<int>>pq;
for(int i=0; i<N*N; i++)
{
int num; cin>>num;
pq.push(num);
if(pq.size()>=N+1)
{
pq.pop();
}
}
cout<<pq.top()<<endl;
}
체감난이도 | 걸린시간 | 참고 | 사용 문법 |
하 | short | mb는 몇 바이트인지 | 우선순위 큐 |
'PS 연습' 카테고리의 다른 글
[PS 연습 - 재귀] 백준 문제 풀이 - 10994 별찍기 - 19 (0) | 2022.04.29 |
---|---|
[PS 연습 - 정렬] 백준 문제 풀이 - 11651 좌표 정렬하기 2 (0) | 2022.04.25 |
[알고리즘] 백준 문제 풀이 - 2108 통계학 (0) | 2022.04.23 |
[자료구조] 백준 문제 풀이 - 2346 풍선 터뜨리기 (0) | 2022.04.16 |
[자료구조] 백준 문제 풀이 - 1021 회전하는 큐 (0) | 2022.04.16 |