动态规划求解01背包问题
将前i件物品放入容量为Y的背包中”这个子问题,若只考虑第i件物品放或不放,那么就转化为一个只牵扯前i-1件物品的问题。如果不放第i件物品,那么问题就转化为“将前i-1件物品放入容量为Y的背包中”,价值为f[i-1][Y];如果放第i件物品,那么问题就转化为“前i-1件物品放入剩下的容量为v-c[i]的背包中”,此时能获得的最大价值就是f[i-1][Y-c[i]]再加上放入第i件物品获得的价值w[i]。状态转移方程:f[i][Y]=max{f[i-1][Y],f[i-1][Y-c[i]+w[i]}
原创
2022-12-30 17:08:17 ·
80 阅读 ·
0 评论