美文网首页
完全背包问题

完全背包问题

作者: 猴式智减法 | 来源:发表于2018-01-31 21:12 被阅读0次

有n个重量和价值分别为wi,vi的物品。从这些物体中挑选出总重量不超过W的物品,求所有方案中价值总和的最大值。在这里,每种物品可以挑选任意多件。

void solve() {
    for (int i = 0; i < n; ++i)
    {
        for (int j = 0; j <= W; ++j)
        {
            if (j < w[i]) {
                dp[i + 1][j] = dp[i][j];
            } else {
                dp[i + 1][j] = max(dp[i][j], dp[i + 1][j - w[i]] + v[i]);
            }
        }
    }
    printf("%d\n", dp[n][W]);
}

对比 01背包

void solve() {
    for (int i = n - 1; i >= 0; i --) {
        for (int j = 0; i < j<= W; ++j) {
            if (j < w[i]) {
                dp[i][j] = dp[i + 1][j];
            } else {
                dp [i][j] = max(dp[i + 1][j], dp[i + 1][j - w[i]] + v[i]);
            }
        }
        
    }
    printf("%d\n", dp[0][W]);
}

则两者的差异只有循环的方向

相关文章

  • 背包问题(完全背包)

    动态规划合集: 1.矩阵链乘法2.投资组合问题3.完全背包问题4.01背包问题5.最长公共子序列 例题3——背包问...

  • 完全背包问题

    相比于01背包问题只是单纯的多了一个条件:物品可以重复利用。 这是01背包问题的状态转移方程: 当W-wi大于0时...

  • 完全背包问题

    有n个重量和价值分别为wi,vi的物品。从这些物体中挑选出总重量不超过W的物品,求所有方案中价值总和的最大值。在这...

  • 完全背包问题

    https://www.cnblogs.com/A1269180380/p/6344043.html 注意数组的遍...

  • 背包问题2(完全背包)

    01背包是指每件物品有且只有一件,而完全背包则是每件物品件数无限,求装入背包所对应的最值。完全背包也有公式,在01...

  • 动态规划完全背包01

    完全背包 和01背包一样力扣上没有没有纯完全背包问题,都是需要完全背包的各种应⽤,需要转化成完全背包问题,所以我们...

  • 背包系列问题之--完全背包问题

    问题描述 小偷深夜潜入一家珠宝店,店里有5类宝物,每类宝物体积分别为W{1,3,2,4,5},对应的价值为V{20...

  • 算法-动态规划算法总结

    1 基础问题 2 背包问题 2.1 01背包 2.2 完全背包 3 打劫问题 4 股票问题 5 子序列问题 5.1...

  • 01背包问题(完全背包,部分背包)golang实现

    很经典的动态规划问题,具体思路这里就不列出了,网上太多资料了。想要详细理解的话可以去看背包九讲这里分别列出,01背...

  • 动态规划常见面试题

    子序列类型编辑距离 最长递增子序列 最大子数组 最长公共子序列 背包问题0-1背包问题 子集背包问题 完全背包问题...

网友评论

      本文标题:完全背包问题

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