프로그래머스
[프로그래머스] 단속 카메라 (javascript)
해랑쓰
2021. 3. 19. 23:53
728x90
반응형
1. 시작점을 기준으로 오름차순 정렬한다. 기준점은 시작점의 끝나는 지점이다. (end)
2. 만약 다음 배열의 시작점이 기준점(이전 지점)보다 먼저라면 범위가 겹치는 지점이다. 끝나는 점이 더 작은 걸로 end를 갱신한다.
3. 만약 다음 지점의 시작점과 기준점보다 크다면 범위가 겹치치 않는다. 현재의 end지점에 카메라를 설치하고 end를 새로운 범위의 끝점으로 갱신해라.
4. 반복
function solution(routes) {
var answer = 1;
routes.sort((a,b)=>a[0]-b[0]);
let end=routes[0][1];
for(let i=1;i<routes.length;i+=1){
const [s,e]=routes[i];
if(s<=end){
if(e<end){
end=e;
}
}else{
answer+=1;
end=e;
}
}
return answer;
}
728x90
반응형