import java.util.Arrays;
import java.util.Comparator;
public class IntervalCover {
public static int minCover(int[][] intervals) {
if (intervals == null || intervals.length == 0) {
return 0;
}
Arrays.sort(intervals, Comparator.comparingInt(a -> a[1]));
int count = 1;
int end = intervals[0][1];
for (int i = 1; i < intervals.length; i++) {
if (intervals[i][0] > end) {
count++;
end = intervals[i][1];
}
}
return count;
}
public static void main(String[] args) {
int[][] intervals = { { 1, 3 }, { 2, 4 }, { 3, 6 }, { 5, 7 }, { 6, 8 } };
int minCover = minCover(intervals);
System.out.println("(20052159何思洁)最小覆盖区间数量为: " + minCover);
}
}