美文网首页
LeetCode 474

LeetCode 474

作者: ViewX | 来源:发表于2017-10-12 12:41 被阅读0次

LeetCode 474


474 Ones and Zeroes
类似 0 1 背包问题的问题

 int solve(vector<string> &strs, int m, int n) {
    vector<vector<int>> rsts(m + 1, vector<int>(n + 1));
    for (auto &s:strs) {
        int zeros = count(s.begin(), s.end(), '0');
        int ones = s.size() - zeros;
        for (int r = m; r >= zeros; r--)
            for (int c = n; c >= ones; c--)
                if (rsts[r - zeros][c - ones] + 1 > rsts[r][c])
                    rsts[r][c] = rsts[r - zeros][c - ones] + 1;
    }
    return rsts[m][n];
 }

使用了动态规划的方法。更多的串的问题可以利用较少字符串的问题的结果。要看当前字符串能不能利用,就看对于每个(r,c)的rsts[r][c]能不能变成rsts[r-zeros][c-ones]+1 这里从右下角往左上角进行改变,因为正向顺序会让一个字符串使结果改变两次。
如果要用正向顺序,要复制一份,再复制回去。

相关文章

  • 算法相关文章索引(4)

    实战演练 LeetCode 474-Ones and Zeroes LeetCode 19-Remove Nth ...

  • LeetCode 474

    LeetCode 474 474 Ones and Zeroes类似 0 1 背包问题的问题 使用了动态规划的方法...

  • leetcode 474. Ones and Zeroes

    原题地址 https://leetcode.com/problems/ones-and-zeroes/descri...

  • LeetCode474. Ones and Zeroes

    1、题目链接 https://leetcode.com/problems/ones-and-zeroes/ 2、解...

  • leetcode动态规划—背包系列(一)

    leetcode 474 题目描述:在计算机界中,我们总是追求用有限的资源获取最大的收益。现在,假设你分别支配着 ...

  • LeetCode 474 一和零

    题目 一和零 题目内容 在计算机界中,我们总是追求用有限的资源获取最大的收益。现在,假设你分别支配着 m 个 0 ...

  • LeetCode 474. 一和零

    1、题目 一和零 - 力扣(LeetCode) https://leetcode-cn.com/problems/...

  • LeetCode474 一和零

    题目描述 在计算机界中,我们总是追求用有限的资源获取最大的收益。 现在,假设你分别支配着 m 个0和 n 个1。另...

  • LeetCode 474. 一和零

    题目 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。请你找出并返回 strs 的最大子集的长度,该...

  • 474

    《芳华》太虐心了。

网友评论

      本文标题:LeetCode 474

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