기록하는 개발자

[프로그래머스][코딩테스트 고득점 Kit][Javascript] 단속카메라 본문

Algorithm

[프로그래머스][코딩테스트 고득점 Kit][Javascript] 단속카메라

밍맹030 2023. 8. 8. 15:39
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/42884

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

전체 코드

function solution(routes) {
    // 진입 시점을 기준으로 오름차순 정렬    
    routes.sort((a, b) => a[1] - b[1]);
    // 첫 진입 차량에 대해 카메라를 한 대 설치하고 시작
    let answer = 1;
    // 최근 설치한 카메라의 위치
    let nowPosition = routes[0][1];
    
    // 앞서 0번째 차량에 대해 카메라를 설치했으므로
    // i=1 부터 시작
    for (let i = 1; i < routes.length; i++) {
    	// 설치한 카메라의 위치가 차량의 진입지점 전에 있는 경우
        // 다음 카메라 위치를 차량의 진출지점으로 갱신
        if (nowPosition < routes[i][0]) {
            answer++;
            nowPosition = routes[i][1];
        }
    }
    return answer;
}
728x90