classSolution { public: interaseOverlapIntervals(vector<vector<int>>& intervals){ sort(begin(intervals), end(intervals)); int res = 0, e = INT_MIN; for (constauto &i : intervals) { if (i[0] < e) { ++res; e = min(e, i[1]); } else { e = i[1]; } } return res; } };
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
classSolution { public: interaseOverlapIntervals(vector<vector<int>>& intervals){ int n = size(intervals); if (n < 2) return0; sort(begin(intervals), end(intervals)); int res = 0; for (int e = intervals[0][1], i = 1; i < n; ++i) { if (intervals[i][0] < e) { ++res; e = min(e, intervals[i][1]); } else { e = intervals[i][1]; } } return res; } };