LeetCode518零钱兑换II

原题
完全背包
类似 494目标和都是求方案数,但494是01背包

题解

class Solution {
    public int change(int amount, int[] coins) {
        int[] dp = new int[amount+1];
        dp[0] = 1;
        for(int i=0;i<coins.length;i++){
            //这里注意j从当前币值开始,可省去与当前币值比大小
            for(int j=coins[i];j<=amount;j++){
                //当求方案数时,就把原来求值时的选min/max换为相加
                dp[j] = dp[j] + dp[j-coins[i]];
            }
        }
        return dp[amount];
    }
}
posted @ 2021-03-14 23:05  economies  阅读(35)  评论(0)    收藏  举报