首页 > 其他 > 详细

[动态规划] leetcode 960 Delete Columns to Make Sorted III

时间:2019-08-08 01:03:52      阅读:114      评论:0      收藏:0      [点我收藏+]

problem:https://leetcode.com/problems/delete-columns-to-make-sorted-iii/

        这是一道伪装成2维的1维最长子序列类型的dp题目,虽然打着hard的tag,实际上我觉得还没有另外一道make sorted的贪心类型的题目难。

class Solution {
public:
    int minDeletionSize(vector<string>& A) {
        int n = A.size();
        int m = A[0].size();
        int res = 0;
        vector<int> dp(m, 1);
        for (int i = 0; i < m; i++)
        {
        //    cout << i << " ";
            for (int j = 0; j < i; j++)
            {
                bool bLarger = true;
                for (int k = 0; k < n; k++)
                {
                    if (A[k][i] < A[k][j])
                    {
                        bLarger = false;
                        break;
                    }
                }
                if (bLarger)
                {
                    dp[i] = max(dp[i], dp[j] + 1);
                }
            }
            res = max(res, dp[i]);
        }
        //cout << res << endl;
        return m - res;
    }
};

 

[动态规划] leetcode 960 Delete Columns to Make Sorted III

原文:https://www.cnblogs.com/fish1996/p/11318507.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!