최대 힙
https://www.acmicpc.net/problem/11279
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
PriorityQueue<Integer> pQ = new PriorityQueue<>(Collections.reverseOrder());
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
for (int i = 0; i < n; i++) {
int input = Integer.parseInt(br.readLine());
if (input == 0) {
if (pQ.isEmpty()) {
System.out.println(0);
} else {
System.out.println(pQ.poll());
}
} else {
pQ.offer(input);
}
}
}
}
Collections.reverseOrder()
를 통해 최댓값이 우선적으로 추출될 수 있도록 변경해 주었습니다.10분