class Solution {
public int findMinArrowShots(int[][] points) {
Arrays.sort(points, (o1, o2) -> Integer.compare(o1[0], o2[0]));
int count = 0;
int min = points[0][1];
for(int i = 1; i < points.length;i++){
if(min > points[i - 1][1]) min = points[i - 1][1];
if(points[i][0] > min){
count++;
min = points[i][1];
}
}
return ++count;
}
}
重叠区间,如果不满足最小右界 >= 下一个气球的起点,则需要新的箭来射