classSolution{public:staticboolcmp(vector<int>& a, vector<int>& b){return a[1]< b [1];}interaseOverlapIntervals(vector<vector<int>>& intervals){if(intervals.size()==0)return0;sort(intervals.begin(), intervals.end(), cmp);int count =1;int end = intervals[0][1];for(int i =1; i < intervals.size(); i++){if(end <= intervals[i][0]){
end = intervals[i][1];
count++;}}return intervals.size()- count;}};
classSolution{public:
vector<int>partitionLabels(string s){int hash[27]={0};for(int i =0; i < s.size(); i++){
hash[s[i]-'a']= i;}
vector<int> result;int left =0;int right =0;for(int i =0; i < s.size(); i++){
right =max(right, hash[s[i]-'a']);if(i == right){
result.push_back(right - left +1);
left = i +1;}}return result;}};