프로그래머스(탐욕법) - 단속카메라
해당 문제는 생각하기에 따라 어려울 수도 있고 쉬울수도 있을듯합니다. 먼저입력받은 route를 진출지점 기준으로 오름차순으로 정렬한 후 진입지점이 카메라 위치보다 먼곳에 위치하면 진출지점에 카메라를 설치하도록 합니다. 진출지점 기준으로 오름차순으로 정렬했기 때문에 다음 route의 진입 지점이 카메라 위치보다 작다면 카메라를 설치할 필요가 없습니다.
public int solution(int[][] routes) {
int answer = 0;
PriorityQueue<int[]> priorityQueue = new PriorityQueue<>(Comparator.comparingInt(o -> o[1]));
int cameraIndex = Integer.MIN_VALUE;
for (int i = 0; i <routes.length; i++) {
priorityQueue.add(routes[i]);
}
while (!priorityQueue.isEmpty()) {
int[] route = priorityQueue.poll();
if (cameraIndex < route[0]) {
cameraIndex = route[1];
answer++;
}
}
return answer;
}
'정리 > 알고리즘' 카테고리의 다른 글
DP - 정수 삼각형 (0) | 2022.03.07 |
---|---|
DP - N으로 표현 (0) | 2022.03.04 |
탐욕법 - 섬 연결하기 (0) | 2022.03.02 |
탐욕법 - 구명보트 (0) | 2022.03.01 |
탐욕법 - 큰 수 만들기 (0) | 2022.02.23 |
댓글