import java.util.Arrays;
import java.util.Comparator;
// 단속카메라 - 탐욕법(Greedy)
public class Camera {
public int solution(int[][] routes) {
int answer = 0, camera = -30000;
Arrays.sort(routes, new Comparator<int[]>() { // 도착순서대로 배열 *제네릭으로 int[] 타입 가능*
public int compare(int[] a1, int[] a2) {
return a1[1] > a2[1] ? 1 : -1;
}
});
for (int[] arr : routes) { // 카메라가 자동차의 진입시점보다 전에 있으면 카메라 대수를 증가시킴 -> 카메라 위치름 진입한 차량의 진출지점으로 옮김
if (camera < arr[0]) {
answer++;
camera = arr[1];
}
}
return answer;
}
}
Arrays.sort(arr, new Comparator<int[]>() {...}); // 제네릭으로 int[] 타입 가능. 2차원 배열 정렬 시 사용