n个物品有各自的价值(v[i])和重量(w[i]), 给定最大的重量,求能达到的最大价值。
有两种规模方式:
1.
1 <= n <= 100
1 <= v <= 1^7;
1 <= w <= 100;
2.
1 <= n <= 100
1 <= w <= 1^7;
1 <= v <= 100;
有两种dp方式
A: M[i][j]///前i个物品中总重量不超过j的最大价值;
B: M[i][j]///前i个物品中总价值为j的最小重量;
明显,第一种规模用的是A, 第二种用的是B。
相应的状态转移方程是:
M[i+1][j] = max(M[i][j], M[i][j-w[i]] + v[i]);
M[i+1][j] = min(M[i][j], M[i][j-v[i]] + w[i]);