当前位置: 首页 > news >正文

20260518 背包DP

概念

0-1 背包

\(N\) 件物品和一个容量为 \(M\) 的背包。第 \(i\) 件物品的重量是 \(W_i\),价值是 \(D_i\)。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。

我们设 \(dp_i,_j\) 表示选了前 \(i\) 个,重量为 \(j\) 的最大价值。

显然可以选或不选,dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - v[i]] + w[i]);

完全背包

\(N\) 件物品和一个容量为 \(M\) 的背包。第 \(i\) 件物品的重量是 \(W_i\),价值是 \(D_i\)。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大,每个可以选多次。

显然,可以在 \(DP\) 转移的时候变一下,dp[i][j] = max(dp[i - 1][j], dp[i][j - v[i]]);

多重背包

\(N\) 件物品和一个容量为 \(M\) 的背包。第 \(i\) 件物品的重量是 \(W_i\),价值是 \(D_i\),可以选 \(L_i\) 个。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。

\(DP\) 时可以枚举选了几个。

二进制优化

把物品拆成 \(\log n\) 个数量,这样可以优化到 \(\log n\)

空间优化

  1. 滚动数组
  2. 重复利用

因为 dp[i][j] 只会转移到 dp[i + 1][j]dp[i + 1][j + v[i + 1]],所以可以重复利用数组。

注意循环方向。

树上背包

首先这里很容易写错。
不能直接枚举,要记录一个字树,然后枚举时取最小值。
这样复杂度就降下来了。

恰好的背包

初始化一个值即可。

时间复杂度

0-1 背包:\(O(nm)\)

完全背包:\(O(nm)\)

多重背包(暴力):\(O(nml)\)

多重背包(二进制优化):\(O(nm\log l)\)

多重背包(单调队列优化):\(O(nm)\)

树上背包(暴力):\(O(n^2m)\)

树上背包(优化):\(O(nm)\)

例题

F

注意到,每增加一次,\(t_i\) 就增加 \(1\)

我们就会发现,要求的就是 \(t\) 的总和的容量大于或等于 \(n\) 的背包。

I

先按 \(d\) 排序。
然后就是一个背包,然后输出路径。

http://www.jsqmd.com/news/866845/

相关文章:

  • Unity第三人称跳跃真实感实现:CharacterController、Input System与BlendTree深度协同
  • 2026年国内正规AI搜索优化服务商选型指南与核心能力深度解析 - 产业观察网
  • Unity 2D物理级撕裂:基于Mesh动态剖分的程序化破碎实现
  • Unity全局光照优化:GIP体素探针与球谐函数实战
  • Google I/O:大厂的Agent基建主战场
  • AI系统渗透测试:五层解剖法与七步可复现实战方法论
  • 2026年5月最新海东黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 检测回收中心
  • AI安全幻觉:当CVE编号被算法伪造
  • 海南老板注意!注册海南公司代理记账怎么选专业靠谱的优质服务商?2026本土财税权威高口碑推荐排行实力榜单TOP5 - 资讯纵览
  • DH密钥协商资源耗尽漏洞防御实战指南
  • 2026年5月最新博尔塔拉黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 检测回收中心
  • WeakHashMap 与 HashMap 在缓存场景下的内存回收区别对比
  • 2026年5月最新六盘水黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 检测回收中心
  • 2026生物除臭箱厂家实力排行 一站式玻璃钢管道配套除臭设备甄选指南 - 资讯纵览
  • 编程统计行业人才流动方向数据,提前储备紧缺岗位人才,解决企业职场用工短缺紧急问题。
  • Diffie-Hellman资源管理漏洞CVE-2002-20001深度解析与修复
  • 2026年汕头龙湖区黄金回收Top排名:避坑指南与合规选择全解析 - 小仙贝贝
  • 固始贴膜店哪家车衣技术强?揭秘本地前三名的真相
  • 题解:sort
  • 企业级低代码实测榜:5大平台优劣拆解,技术人必看
  • 银河麒麟系统Qt Creator调试程序运行提示安全授权认证窗口
  • 前端String 数组和Math API大全
  • 2026年5月最新抚州黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 检测回收中心
  • OAuth 2.0 与 OIDC 协议协同实现安全身份认证
  • 2026年5月最新阜新黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 检测回收中心
  • 传统学习软件强制打卡,编程放弃打卡学习系统,记录主动停止内耗休息时长,倡导劳逸结合学习观。
  • Unity 2D物理关节原理与实战:从HingeJoint2D到稳定吊桥搭建
  • GEO服务商怎么选择?AI 问答时代企业品牌如何被推荐。2026 年 适合中小企业GEO 服务商TOP5 评测 - 资讯纵览
  • 2026年天津GEO优化公司TOP6深度测评:从技术实力到效果落地的选型指南 - 资讯纵览
  • Log4j2 CVE-2021-44832深度解析:JDBC Appender中的JNDI上下文劫持