탐욕법(Greedy)-단속카메라 [JAVA]

LeHoODU·2023년 12월 19일
0
post-thumbnail

프로그래머스 단속카메라 문제

💡풀이방안
도착지점을 오름차순으로 나열 한 후,
가장 첫 도착지점에 단속카메라 위치를 now로 설정한 뒤, 그 후 나오는 시작/도착 지점 사이에 now가 있는지 판단

public int solution(int[][] routes) {
		//도착지점 오름차순으로 정렬
        Arrays.sort(routes, (a,b) -> Integer.compare(a[1],b[1]));
        
        //첫번째 루트의 도착지점에 단속카메라를 설치 후,
        카메라 개수 1로 설정 
        int cnt = 1;
        int now = routes[0][1];
        
        //현재의 카메라 위치가 다음 시작/도착지점의 사이에 위치해 있지 않다면, 
        다음 도착지점에 카메라를 추가 설치
        for (int i = 0; i< routes.length-1; i++){
            if (!(now >= routes[i+1][0] && now <= routes[i+1][1])) {
                now = routes[i+1][1];
                cnt ++;
            }
        }
        return cnt;
    }
profile
Back-End Developer

0개의 댓글