题目描述
小明有一个容量为 V的背包。
这天他去商场购物,商场一共有 N件物品,第 i 件物品的体积为 w,价值为 v。
小明想知道在购买的物品总体积不超过 V的情况下所能获得的最大价值为多少,请你帮他算算。
输入描述
输入第 11 行包含两个正整数 N,V,表示商场物品的数量和小明的背包容量。
第 2∼N+1 行包含 2 个正整数 w,v表示物品的体积和价值。
输出描述
输出一行整数表示小明所能获得的最大价值。
输入输出样例
示例 1
输入
5 20
1 6
2 5
3 8
5 15
3 3
输出
37
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
DP经典问题
1)学习解决这类问题的思路
第一步:将原问题分解成子问题,若干子问题具备最优子结构,无后效性。
具体问题具体分析,如何分解子问题是关键。来看 这道题,状态可以设置成F(i,j)代表前i个物品,总体积不超过j的最优解法总价值。用一个二维数组来储存状态。