动态规划 —— 背包问题

【概述】

    背包问题(Knapsack problem)是一种组合优化的NP完全问题。

    问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。

    也可以将背包问题描述为决定性问题,即:在总重量不超过W的前提下,总价值是否能达到V?

【分类】

  1. P01 0-1背包问题:最基本的背包问题,每个物品最多只能放一次。    点击这里
  2. P02 完全背包问题:基本的背包问题模型,每种物品可以放无限多次。    点击这里
  3. P03 多重背包问题:每种物品有一个固定的次数上限。    点击这里
  4. P04 混合三种背包问题:将前三种的问题叠加成较复杂的问题。    点击这里
  5. P05 二维费用的背包问题:费用增加了一维。    点击这里
  6. P06 分组的背包问题:对于每件物品,具有两种不同的费用;选择这件物品必须同时付出这两种代价。    点击这里
  7. P07 有依赖的背包问题:给物品的选取加上限制的方法。    点击这里
  8. P08 泛化物品的背包问题:没有固定的费用和价值,而是它的价值随着你分配给它的费用而变化。    点击这里
  9. P09 背包问题问法的变化:除在背包容量的限制下求可取最大价值外的其他问法。    点击这里

【例题】

各种背包问题模版:点击这里

1.01背包

  1. 开心的金明(洛谷-P1060):点击这里
  2. 小A点菜(洛谷-P1164):点击这里
  3. 采药(洛谷-P1048):点击这里
    同题:采药(信息学奥数一本通-T1290):点击这里
  4. 装箱问题(洛谷-P1049):点击这里
  5. Bone Collector(HDU-2602):点击这里
    同题:装箱问题(信息学奥数一本通-T1295):点击这里
  6. 01背包问题(信息学奥数一本通-T1267):点击这里
  7. Charm Bracelet(信息学奥数一本通-T1294):点击这里
    英文版:Charm Bracelet(POJ-3624):点击这里
  8. 榨取kkksc03(洛谷-P1855):点击这里
  9. 正整数分组(51Nod-1007):点击这里
  10. 开餐馆(信息学奥数一本通-T1296):点击这里
  11. 烹调方案(洛谷-P1417)(贪心+01背包)点击这里
  12. Proud Merchants(HDU-3466)(贪心+01背包)点击这里
  13. Cow Roller Coaster(POJ-3257)(贪心+01背包)点击这里
  14. Big Event in HDU(HDU-1171)(思维+01背包)点击这里
  15. Course Selection System(ZOJ-3956)(公式推导+01背包)点击这里
  16. Dima and Salad(CF-366C)(扩容+01背包)点击这里
  17. Simple Knapsack(AtCoder-2556)(扩容+01背包)点击这里
  18. 多米诺骨牌(洛谷-P1282)(思维+扩容+01背包)点击这里

2.完全背包

  1. 完全背包问题(信息学奥数一本通-T1268):点击这里
  2. 疯狂的采药(洛谷-P1616):点击这里
  3. Piggy-Bank(HDU-1114)(思维+完全背包)点击这里
  4. Battle Ships(ZOJ-3623)(思维+完全背包)点击这里
  5. Dollar Dayz(POJ-3181)(完全背包+高精度加法)点击这里

3.多重背包

  1. 庆功会(信息学奥数一本通-T1269):点击这里
  2. Buns(CF-106C):点击这里
  3. 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(HDU-2191):点击这里
  4. Ant Counting(POJ-3046)(贪心+多重背包)点击这里

4.其他

  1. 混合背包(信息学奥数一本通-T1270)(01背包+完全背包+多重背包)点击这里
  2. The Fewest Coins(POJ-3260)(完全背包+多重背包)点击这里
  3. 潜水员(信息学奥赛一本通-T1271)(二维费用背包)点击这里
  4. 宠物小精灵之收服(信息学奥赛一本通-T1292)(二维费用背包)点击这里
  5. 分组背包(信息学奥赛一本通-T1272)(分组背包)点击这里
  6. Washing Clothes(POJ-3211)(分组背包+01背包)点击这里
  7. 金明的预算方案(洛谷-P1064)(有依赖的背包)点击这里
  8. 货币系统(信息学奥赛一本通-T1273)(最优方案数)点击这里
  9. 数字组合(信息学奥数一本通-T1291)(方案总数)点击这里
  10. 买书(信息学奥数一本通-T1293)(方案总数)点击这里
  11. 高橋君とカード / Tak and Cards(AtCoder-2037)(方案总数)点击这里
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值