1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ ๋ฐฉ์
์ด๊ฑด ๋ญ Priority Queue ์ธ ์ค ์๋๊ณ ๋ฌป๋ ๋ฌธ์ ์๋ค.
- PQ๋ฅผ ๋ง๋ ๋ค. (default๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ์ด๋ ๊ฑด๋ค์ผ ๊ฒ์ด ์๋ค.)
- ๋ฌธ์ ์์ ์ ๊ณตํ๋ Order์ ๋ฐ๋ฅธ๋ค. (0์ด๋ฉด ์ถ๋ ฅ, ๋๋จธ์ง๋ฉด ์ ์ฅ)
3. ์ฝ๋ ๋ถ์
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PriorityQueue<Integer> pq = new PriorityQueue<>();
StringBuilder sb = new StringBuilder();
int N = Integer.parseInt(br.readLine());
for (int i = 0; i < N; i++) {
int now =Integer.parseInt(br.readLine());
switch (now){
case 0: {
if(pq.isEmpty()) sb.append(0).append("\n");
else sb.append(pq.poll()).append("\n");
break;
}
default:pq.add(now);
}
}
System.out.println(sb);
}
}
0