题目:
给出n个物品的体积A[i]和其价值V[i],将他们装入一个大小为m的背包,最多能装入的总价值有多大?
思路:
采用动态规划法。V[N][W]表示到物品N在背包重量为W时的最大价值,则对于第i个物品,有两种情况:
第一种情况是A[i] <= w,即物品i可以放入背包中
1. 计算放入物品i背包的最大价值 V[i-1][w-A[i]]+V[i-1]
2. 计算不放入物品i背包的最大价值 V[i-1][w]
比较上述两个值,得到背包的最大值。
第二种情况是A[i] > w,即物品i不能放入背包中,此时背包的最大价值为V[i-1][w]。
代码AC: