646. Maximum Length of Pair Chain

来源:互联网 发布:淘宝查号代收怎么做 编辑:程序博客网 时间:2024/06/05 09:35

典型的贪心算法

class Solution {public:    static bool cmp(pair<int,int> &a ,pair<int,int> &b )    {        if(a.second<b.second)            return true;        else            return false;    }    int findLongestChain(vector<vector<int>>& pairs) {        if(pairs.size()==0)            return 0;        vector<pair<int,int>> inputs;        for(int i = 0;i<pairs.size();i++)        {            pair<int,int> temp = make_pair(pairs[i][0], pairs[i][1]);            inputs.push_back(temp);                  }        sort(inputs.begin(),inputs.end(),cmp);        //for(int i = 0;i<inputs.size();i++)        //    cout<<inputs[i].first<<" "<<inputs[i].second<<endl;        int count = 1;        int start = inputs[0].first;        int end = inputs[0].second;        for(int i = 1;i<inputs.size();i++)        {            if(inputs[i].first > end)            {                count++;                start = inputs[i].first;                end = inputs[i].second;            }        }        return count;    }};