435. 无重叠区间
bool compare(vector<int>& a, vector<int>& b)
{
return a[1] < b[1];
}
class Solution {
public:
int eraseOverlapIntervals(vector<vector<int>>& intervals) {
if(intervals.size() < 2) return 0;
sort(intervals.begin(),intervals.end(),compare);
int cmp = intervals[0][1];
int sum = 0;
for(int i = 1; i < intervals.size(); i++)
{
if(intervals[i][0] < cmp)
{
sum++;
}
else
{
cmp = intervals[i][1];
}
}
return sum;
}
};
bool cmp(vector<int>& a, vector<int>& b)
{
return a[0] < b[0];
}
class Solution {
public:
int eraseOverlapIntervals(vector<vector<int>>& intervals) {
if(intervals.size() < 2) return 0;
sort(intervals.begin(), intervals.end(),cmp);
int total = 0;
int temp = intervals[intervals.size()-1][0];
for(int i = intervals.size()-2; i >= 0; i--)
{
if(intervals[i][1] > temp)
{
total++;
}
else
{
temp = intervals[i][0];
}
}
return total;
}
};