求解《背包九讲》中的多重背包

且走且珍惜 2013-03-15 08:53:57
各位大犇好!
小弟看了《背包九讲》中的多重背包。理解了前面的 〇(V∑n[i]) 的暴力算法。
但对于后面的把每件物品拆分成若干件个系数的和表示 这种方法不是很理解。

暴力方法 对于 n[i]件物品,每件都考虑了。
但系数方法,只是对 1,2,4,……n[i] - 2 ^ k + 1 中方法进行了考虑。会不会有遗漏或考虑不周啊?

...全文
166 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
leizh007 2013-03-16
  • 打赏
  • 举报
回复
引用 2 楼 CS_liuqing 的回复:
引用 1 楼 leizh007 的回复:引用 楼主 CS_liuqing 的回复:各位大犇好! 小弟看了《背包九讲》中的多重背包。理解了前面的 〇(V∑n[i]) 的暴力算法。 但对于后面的把每件物品拆分成若干件个系数的和表示 这种方法不是很理解。 暴力方法 对于 n[i]件物品,每件都考虑了。 但系数方法,只是对 1,2,4,……n[i] - 2 ^ k +……
那个暴力方法就是一个一个的取 二进制分解方法就是你可以一次去1个,或者2个,或者4个,...,或者2^k个,或者n[i]-2^k+1个 比如说暴力方法你取了3次,就是1+1+1; 而二进制分解法只需要两次就可以第一次取1个,第二次取2个:1+2
FancyMouse 2013-03-16
  • 打赏
  • 举报
回复
假设A代表选2件,B代表选4件,如果状态转移的时候AB都选那就等于选了6件。
且走且珍惜 2013-03-16
  • 打赏
  • 举报
回复
引用 1 楼 leizh007 的回复:
引用 楼主 CS_liuqing 的回复:各位大犇好! 小弟看了《背包九讲》中的多重背包。理解了前面的 〇(V∑n[i]) 的暴力算法。 但对于后面的把每件物品拆分成若干件个系数的和表示 这种方法不是很理解。 暴力方法 对于 n[i]件物品,每件都考虑了。 但系数方法,只是对 1,2,4,……n[i] - 2 ^ k + 1 中方法进行了考虑。会不会有遗漏或考……
但是每次只是对1,2,4,……n[i] - 2 ^ k + 1,进行考虑啊,怎么对全部的n[i]中可能进行了考虑呢? 我就是对这里不理解。求大犇!
leizh007 2013-03-16
  • 打赏
  • 举报
回复
引用 楼主 CS_liuqing 的回复:
各位大犇好! 小弟看了《背包九讲》中的多重背包。理解了前面的 〇(V∑n[i]) 的暴力算法。 但对于后面的把每件物品拆分成若干件个系数的和表示 这种方法不是很理解。 暴力方法 对于 n[i]件物品,每件都考虑了。 但系数方法,只是对 1,2,4,……n[i] - 2 ^ k + 1 中方法进行了考虑。会不会有遗漏或考虑不周啊? ……
不会, 1,2,4,……n[i] - 2 ^ k + 1能组成从1到n[i]的所有数
就是要流量 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊大家多给评论 点赞 关注啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧