问能否能装满背包(或者最多装多少):dp[j] = max(dp[j], dp[j - nums[i]] + nums[i])
问装满背包有几种方法:dp[j] += dp[j - nums[i]]
问背包装满最大价值:dp[j] = max(dp[j], dp[j - weight[i]] + value[i])
问装满背包所有物品的最小个数:dp[j] = min(dp[j - coins[i]] + 1, dp[j])
01背包:
完全背包:
总结:背包问题最重要的两点,递推公式和遍历顺序