알고리즘 문제 풀이를 블로그에 올리는 이유는 풀이, 코드를 기록하기 위함이니
앞으로 문제를 다 긁어오기보다 링크만 두고 풀이가 잘 보이도록 포스팅 할 예정입니다!
이 문제는
출력
) 그 때의 i가 주어진 location 값과 같은지 확인출력없이 뒤로 돌아가는 것
) 다음 숫자로 넘어감 public class Solution {
public static void main(String[] args) {
int[] priorities = {1, 1, 9, 1, 1, 1};
int location = 0;
System.out.println(solution(priorities, location));
}
public static int solution(int[] priorities, int location) {
PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder()); //우선순위를 큰 숫자로 변경
int answer = 0;
for (int i = 0; i < priorities.length; i++) {
pq.add(priorities[i]);
}
while (!pq.isEmpty()) {
for (int i = 0; i < priorities.length; i++) {
if (priorities[i] == pq.peek()) {
if (i == location) {
answer++;
return answer;
}
pq.poll();
answer++;
}
}
}
return -1;
}