美文网首页
俄罗斯套娃信封

俄罗斯套娃信封

作者: 小幸运Q | 来源:发表于2021-04-23 19:00 被阅读0次

    先对长排序,再在长度一样的情况下对宽排序,再对宽求最长上升子序列dp。

    class Solution {
    public:
        static bool cmp(vector<int>&a,vector<int>&b){
            if(a[0]<b[0]){
                return true;
            }
            else if(a[0]==b[0]){
                return a[1]<b[1];
            }
            else{
                return false;
            }
        }
        int maxEnvelopes(vector<vector<int>>& envelopes) {
            sort(envelopes.begin(),envelopes.end(),cmp);
            int dp[5000]={0};
            int maxnum=0;
            for(int i=0;i<envelopes.size();i++){
                for(int j=0;j<i;j++){
                    if(envelopes[i][0]>envelopes[j][0]&&envelopes[i][1]>envelopes[j][1]){
                        dp[i]=max(dp[j]+1,dp[i]);
                    }
                }
                maxnum=max(maxnum,dp[i]);
            }
            return maxnum+1;
        }
    };
    

    相关文章

      网友评论

          本文标题:俄罗斯套娃信封

          本文链接:https://www.haomeiwen.com/subject/wvhhrltx.html