[プログラマー]管制カメラ(Java)


リンク
https://programmers.co.kr/learn/courses/30/lessons/42884
問題を解く
高速道路を離れる場所を基準に昇順に並びます.
1)現在の車両の始点がより大きい場合、カメラは現在の車両の終点に取り付けられる.
2)もっと小さいとカメラを通過したことになるので次の車に移動
コード#コード#
import java.util.*;
public class Solution {
	public static int solution(int[][] routes) {
		Arrays.sort(routes, (a,b) -> Integer.compare(a[1], b[1])); //b[1], a[1]로 하면 내림차순 정렬
		int camera = -30001;
		int answer = 0;
		for(int i=0; i<routes.length; i++) {
			if(camera < routes[i][0]) {
				camera = routes[i][1];
				answer++;
			}
		}
        return answer;
    }
	public static void main(String[] args) {
		int[][] r = {{-20,15}, {-14,-5}, {-18,-13}, {-5,-3}};
		System.out.println(solution(r));
	}
}