diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 00000000..da03c1c1 Binary files /dev/null and b/.DS_Store differ diff --git a/problems/.DS_Store b/problems/.DS_Store new file mode 100644 index 00000000..32266f38 Binary files /dev/null and b/problems/.DS_Store differ diff --git a/problems/0518.零钱兑换II.md b/problems/0518.零钱兑换II.md index 2fc807cd..f6a8044c 100644 --- a/problems/0518.零钱兑换II.md +++ b/problems/0518.零钱兑换II.md @@ -95,6 +95,8 @@ dp[j] 就是所有的dp[j - coins[i]](考虑coins[i]的情况)相加。 下标非0的dp[j]初始化为0,这样累计加dp[j - coins[i]]的时候才不会影响真正的dp[j] +dp[0]=1还说明了一种情况:如果正好选了coins[i]后,也就是j-coins[i] == 0的情况表示这个硬币刚好能选,此时dp[0]为1表示只选coins[i]存在这样的一种选法。 + 4. 确定遍历顺序 本题中我们是外层for循环遍历物品(钱币),内层for遍历背包(金钱总额),还是外层for遍历背包(金钱总额),内层for循环遍历物品(钱币)呢? @@ -316,3 +318,4 @@ object Solution { +