首页 > 其他分享 >背包九讲

背包九讲

时间:2024-11-05 21:32:52浏览次数:1  
标签:背包 九讲 合法 inf 倒序 影响

1. 01 背包问题

一切的一切的基石!!!

// v: c[i] to V
f[i][v] = max(f[i - 1][v], v[i - 1][v - c[i]] + w[i]);

解释:

考虑第 \(i\) 位有选和不选两种选择,选了就减去 c[i],附有 w[i] 的影响。

优化:倒序可以省去第一维。

为什么写成这样?

很容易发现 f[i][j] 会被 f[i][j - w[i]] 所影响。

所以:从大到小枚举

  • 如果要求把背包填满:\(f[1 \rightarrow v] = -inf\)!

解释:可以理解成 \(f[i]\) 赋值为 \(0\) 是前一种情况合法的初始操作,而不是后一种的合法操作!

2. 完全背包问题

倒序变成正序就可以了。

因为 f[i][j - w[i]] 的影响消失了。

3. 有依赖的背包问题

标签:背包,九讲,合法,inf,倒序,影响
From: https://www.cnblogs.com/sunruize/p/18528911

相关文章

  • 代码随想录算法训练营day34 day36| 卡码网46题.01背包 416.分割等和子集 1049. 最后
    学习资料:https://programmercarl.com/背包理论基础01背包-1.html动态规划01背包问题学习记录:卡码网46题.01背包点击查看代码##二维背包解法#n,bagweight=map(int,input().split())#weight=list(map(int,input().split()))#value=list(map(int,input().sp......
  • 背包九讲——树形背包问题(有依赖的背包)
    目录树形背包问题问题引入:问题解读:算法例题:10.有依赖的背包问题-AcWing题库题目:算法实现:代码实现:背包问题第七讲——树形背包问题(有依赖的背包)背包问题是一类经典的组合优化问题,通常涉及在限定容量的背包中选择物品,以最大化某种价值或利益。问题的一般描述是:有一......
  • 分组背包问题
    分组背包问题问题有NNN组物品和一个容量是VVV的背包。每组物品有......
  • 动态规划 01背包(算法)
    现有四个物品,小偷的背包容量为8,怎么可以偷得价值较多的物品如:物品编号:1   2   3   4 物品容量:2   3   4   5物品价值:3   4   5   8记f(k,w),当背包容量为w,可以偷k件物品,所能偷到的最大价值以f(4,8)为列,记录每......
  • 代码随想录 -- 动态规划 -- 01背包理论基础
    46.携带研究材料(第六期模拟笔试)思路:dp[i][j]含义:在(0,i)之间任意选取物品放入容量为j的背包中,使背包的价值最大。递推公式:当前背包容纳不下第i个物品,不选第i个物品,此时背包的价值:dp[i][j]=dp[i-1][j]。当前背包容纳得下第i个物品时,且选择第i个物品,此时背包的价值:dp[i][j......
  • 背包九讲——分组背包问题
    目录分组背包问题问题定义解题算法问题解法朴素解法:一维优化解法变式题型背包问题第六讲——分组背包问题背包问题是一类经典的组合优化问题,通常涉及在限定容量的背包中选择物品,以最大化某种价值或利益。问题的一般描述是:有一个背包,其容量为C;有一组物品,每个物品有重......
  • 【深基12.例1】部分背包问题——仔细检查数据类型!
    题目描述阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有\(N(N\le100)\)堆金币,第\(i\)堆金币的总重量和总价值分别是\(m_i,v_i(1\lem_i,v_i\le100)\)。阿里巴巴有一个承重量为\(T(T\le1000)\)的背包,但并不一定有办法将全部的金币都装进去。他想装走尽可能多价值的金......
  • 01背包问题(经典dp题解)
    有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 ii 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来......
  • 机器学习中的算法—背包问题
    原文链接:机器学习中的算法—背包问题–每天进步一点点背包问题是一种资源分配算法,是一种非常典型的问题,是对资源分配最大化的体现。倘若有n件物品,其中每件物品都有属于自己的质量和价值,现在仅有一个背包,但是背包最大的承载量为w,因此需要试图在这个背包里装一些物品,使得物品的......
  • 背包问题-分支限界法求解
    此为课题组所指导本科生和低年级硕士生学习组合优化问题汇报所用教材:北京大学屈婉玲教授《算法设计与分析》课程资料:https://www.icourse163.org/course/PKU-1002525003承诺不用于任何商业用途,仅用于学术交流和分享更多内容请关注许志伟课题组官方中文主页:https://JaywayXu.g......