二维
dp[i][j]:0到物品i之间的物品,任意取进容量为j的背包中,所能得到的最大价值为dp【i】【j】
dp[i][j]=max(dp[i-1][j],dp[i-1][j-weight[i]]+value[i])
一维
dp[j]:容量为j的背包所能装的最大价值为dp[j]
dp[j]=max(dp[j],dp[j-weight[i]]+value[i])
416分割等和子集
二维
dp[i][j]:0到物品i之间的物品,任意取进容量为j的背包中,所能得到的最大价值为dp【i】【j】
dp[i][j]=max(dp[i-1][j],dp[i-1][j-weight[i]]+value[i])
一维
dp[j]:容量为j的背包所能装的最大价值为dp[j]
dp[j]=max(dp[j],dp[j-weight[i]]+value[i])
416分割等和子集