Untitled

 avatar
unknown
plain_text
a year ago
759 B
5
Indexable
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;
    }
};