Untitled
class Solution { public: static bool compare(vector<int>& v1, vector<int>& v2) { return v1[0]<v2[0]; } int numberOfPoints(vector<vector<int>>& nums) { int res=0; if(!nums.size())return res; sort(nums.begin(),nums.end(),compare); int m=nums.size(); vector<vector<int>> v; v.push_back(nums[0]); for(int i=1;i<nums.size();i++) { vector<int> tmp=v.back(); if(nums[i][0]>tmp[1]) { v.push_back(nums[i]); } else { v.back()[1]=max(tmp[1],nums[i][1]); } } for(auto x:v) { res+=x[1]-x[0]+1; } return res; } };