https://school.programmers.co.kr/learn/courses/30/lessons/154539?language=java
문제
제한사항
코드
import java.util.*;
class Solution {
public int[] solution(int[] numbers) {
Queue<int[]> pq = new PriorityQueue<>((a,b)-> a[0]-b[0]);
int size = numbers.length;
for (int i = 0; i < size; i++) {
int cur = numbers[i];
while(!pq.isEmpty() && pq.peek()[0] < cur) {
numbers[pq.poll()[1]] = cur;
}
pq.offer(new int[] {cur,i});
}
while(!pq.isEmpty()) {
numbers[pq.poll()[1]]=-1;
}
return numbers;
}
}
풀이