DP
q390898664
这个作者很懒,什么都没留下…
展开
-
POJ1014 多重背包(二进制拆分)
题目链接 题目大意:给出6个数,分别代表价值为1~6的6种物品的数量,求能否在价值相同的情况下平分这些物品。 思路:多重背包。一开始拆成01背包来做,写了三层循环,很显然结果TLE了。后来上网看了一下题解,大致意思是把每一种物品的数量拆成1,2,4,8,……这样的2的n次方数,比如将12拆成1,2,4,5四个数,这样可以用这些数字来拼凑成任意一个所需要背包的数。#include"cstdio"原创 2016-07-27 10:35:00 · 574 阅读 · 0 评论 -
01背包
状态转移方程:dp[i][j] = max(dp[i-1][j], dp[i-1][j-c[i]] + w[i]) (正背) 可简化为一维方程:dp[i] = max(dp[i], dp[i-c[i]] + w[i]) (倒背) 专题链接:01背包原创 2016-07-18 20:53:16 · 1302 阅读 · 0 评论