文章目录
模板题(背包九讲) | 划分依据 | 经典例题 |
---|---|---|
AcWing 2. 01背包问题 | 最后一个选还是不选 | 1.AcWing 423. 采药 2.AcWing 1024. 装箱问题 3.AcWing 426. 开心的金明 4. AcWing 278. 数字组合(01背包求方案数) |
AcWing 3. 完全背包问题 | 最后一个选多少个 | 1. AcWing 1023. 买书(完全背包求方案数) 2.AcWing 1021. 货币系统 (完全背包求方案数) 3. AcWing 532. 货币系统 |
-AcWing 4. 多重背包问题 - AcWing 5. 多重背包问题 II(二进制优化) |
最后一个选多少个 转换为01背包,把s拆成log(s)份,时间复杂度O(NMlogS) |
AcWing 1019. 庆功会 |
AcWing 7. 混合背包问题 | 分类讨论,01背包是特殊的多重背包,多重背包用二进制优化 | |
AcWing 8. 二维费用的背包问题 | 加多一维限制 | AcWing 1022. 宠物小精灵之收服 AcWing 1020. 潜水员 |
AcWing 9. 分组背包问题 | 最后一步选哪个 | AcWing 1013. 机器分配 |
AcWing 10. 有依赖的背包问题 | 在每棵子树中方案按体积划分,转化为分组背包问题 | |
AcWing 11. 背包问题求方案数 | 增加记录方案的g[]数组 | |
AcWing 12. 背包问题求具体方案 | 求具体方案的时候只需要记录状态从哪里转移过来,由于要输出字典序最小的方案,状态转移方程需要倒着逆推 |