代码随想录:474. 一和零

474. 一和零

二维费用背包问题

cpp 复制代码
class Solution {
public:
    int findMaxForm(vector<string>& strs, int m, int n) {
        int l = strs.size();
        int dp[110][110] = {0};
        //dp[i][j]表示有i个0,j个1的子集长度
        for (int i = 0; i < l; i++) {
            //遍历字符数组
            int one = 0, zero = 0;
            int len = strs[i].size();
            for (int j = 0; j < len; j++) {
                if (strs[i][j] == '1')
                    one++;
                else
                    zero++;
            }
            //算第i个字符串有多少0,多少1
            for (int j = m; j >= zero; j--)
                for (int k = n; k >= one; k--)
                    dp[j][k] = max(dp[j][k], dp[j - zero][k - one] + 1);
                    //更新dp数组,要么维持前一个字符串的结果,要么取该字符串
        }
        return dp[m][n];
    }
};
相关推荐
程序员-King.5 小时前
day158—回溯—全排列(LeetCode-46)
算法·leetcode·深度优先·回溯·递归
星火开发设计6 小时前
C++ 数组:一维数组的定义、遍历与常见操作
java·开发语言·数据结构·c++·学习·数组·知识
月挽清风6 小时前
代码随想录第七天:
数据结构·c++·算法
小O的算法实验室6 小时前
2026年AEI SCI1区TOP,基于改进 IRRT*-D* 算法的森林火灾救援场景下直升机轨迹规划,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
小郭团队7 小时前
2_1_七段式SVPWM (经典算法)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·硬件架构·arm·dsp开发
充值修改昵称7 小时前
数据结构基础:从二叉树到多叉树数据结构进阶
数据结构·python·算法
Deepoch7 小时前
Deepoc数学大模型:发动机行业的算法引擎
人工智能·算法·机器人·发动机·deepoc·发动机行业
-To be number.wan8 小时前
【数据结构真题解析】哈希表中等难度挑战:冲突处理与查找效率深度剖析
数据结构·哈希算法
csdn_aspnet8 小时前
C 语言的优雅回归:从零手造数据结构
c语言·数据结构