csct3434
[level 2] 프로세스 - 42587 본문
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
class Solution {
public int solution(int[] priorities, int location) {
int answer = 0;
PriorityQueue<Integer> pq = new PriorityQueue<>(Comparator.comparing(m -> -m));
Queue<Integer> queue = new LinkedList<>();
for (int i = 0; i < priorities.length; i++) {
queue.add(i);
pq.add(priorities[i]);
}
while (queue.size() > 1) {
if (pq.peek() > priorities[queue.peek()]) {
queue.add(queue.poll());
continue;
}
answer++;
if (pq.peek() == priorities[queue.peek()]) {
pq.remove();
}
if (queue.poll() == location) {
return answer;
}
}
return priorities.length;
}
}
'프로그래머스' 카테고리의 다른 글
[level 2] 가장 큰 수 - 42746 (0) | 2024.02.28 |
---|---|
[level 2] 더 맵게 - 42626 (0) | 2024.02.28 |
[level 2] 기능개발 - 42586 (0) | 2024.02.28 |
[level 2] 주식가격 - 42584 (0) | 2024.02.28 |
[level 2] 다리를 지나는 트럭 - 42583 (0) | 2024.02.28 |