徐持衡-浅谈几类背包题.pptVIP

  • 2
  • 0
  • 约2.31千字
  • 约 25页
  • 2019-07-20 发布于四川
  • 举报
徐持衡 浙江省温州中学;背包问题作为一个经典问题在动态规划中是很基础的一个部分,然而以0-1背包问题为原题,衍生转变出的各类题目,可以说是千变万化,当然解法也各有不同,如此就有了继续探究的价值。;引言 背包的基本变换 ①完全背包 ②多次背包 ③单调队列优化 其他几类背包问题 ①树形依赖背包(选课) ②PKU3093 总结;多次背包问题:给定n 种物品和一个背包。第i种物品 的价值是Wi ,其体积为Vi,数量是Ki件,背包的容量为C。可以任意选择装入背包中的物品,求装入背包中物品的最大总价值。;对于一个左右边界都只增不降的区间最值,可以用单调队列来做到总效率O(n)的维护。 如果要用单调队列来优化多次背包,就必须在多次背包问题中挖掘出一个维护区间最值的子问题。;对于多次背包,用最常见的状态表示是用F[i,j]表示前i种物品,总体积不超过j的最大价值总和。 当前只考虑第i种物品,假设体积v,价值w,数量k。 由于对于体积j,与其相关的只有那些对v的余数与j相同的体积,所以再按照体积j对v的余数分为v份。;我们可以把每一份分开处理,假设现在要考虑余数为d的部分。 用j来标号,规定编号j所对应的体积是d+j*v。 显然编号j可以从编号j-k到j中的任意一个转移而来,因为相邻的体积正好相差v。;区间[j-k,j],这个区间是随着j的递增而左右边界都递

文档评论(0)

1亿VIP精品文档

相关文档