https://programmers.co.kr/learn/courses/30/lessons/42884
function solution(routes) {
var answer = 0;
routes.sort((a, b) => a[1] - b[1]);
let last_camera = routes[0][1];
answer++;
for (let i = 1; i < routes.length; i++) {
// 카메라 추가 필요없음
if (routes[i][0] <= last_camera) continue;
// 카메라 추가 필요
else {
last_camera = routes[i][1];
answer++;
}
}
return answer;
}
✔ 알고리즘 : 그리디
✔ 고속도로를 나간 지점 기준 오름차순 정렬
✔ 카메라는 무조건 나간 지점에만 설치
✔ 배열의 다음값의 시작점과 현재 마지막 카메라의 위치 비교
✔ 난이도 : 프로그래머스 기준 LEVEL 3