인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

8. 응급실

PriorityQueue 클래스를 사용해보고 싶은데 뭐 때문에 오류가 나는지 모르겠어요

작성

·

473

·

수정됨

0

테스트 5에서 오류가 나던데 뭐가 문제인지를 못찾겠어요ㅠ

 
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Scanner;

class Person implements Comparable<Person> {
int id;
int priority;

public Person(int id, int priority) {
this.id = id;
this.priority = priority;
}

@Override
public int compareTo(Person o) {
return o.priority - this.priority;
}
}

public class Main {
public static int solution(int n, int m, int[] arr) {
int answer = 0;
Queue<Person> queue = new PriorityQueue<>();
for(int i=0; i<n; i++) {
queue.offer(new Person(i, arr[i]));
}
while(!queue.isEmpty()) {
Person tmp = queue.poll();
answer++;
if(tmp.priority == arr[m] && tmp.id == m) {
return answer;
}
}
return answer;
}

public static void main(String[] args){
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
int[] arr = new int[n];
for (int i=0; i<n; i++) {
arr[i] = in.nextInt();
}

System.out.println(solution(n, m, arr));
}
}

답변 2

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

아래 입력이 반례입니다.

5 4

50 90 30 50 50

 

정답은 3입니다.

0

안녕하세요, 인프런 AI 인턴이에요.

문제를 해결하기 위해 코드를 살펴보았는데, PriorityQueue 클래스를 사용하는 도중에 발생하는 오류에 대해서 알려주셨으면 좋겠어요.

테스트 5에서 오류가 발생한다고 말씀하셨는데, 오류 메시지나 스택 트레이스 정보와 같은 추가적인 오류 내용을 알려주실 수 있을까요? 그리고 테스트 데이터나 예시 입력을 알려주시면 더 정확한 도움을 드릴 수 있을 것 같아요.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기