美文网首页
背包系列问题——换零钱2

背包系列问题——换零钱2

作者: 抬头挺胸才算活着 | 来源:发表于2020-08-14 17:35 被阅读0次

参考资料:
1. 动态规划之背包问题系列
2. 换零钱2

无限硬币》》完全背包问题
只不过把问题从最大收益换做种类,max改为+
采用分析一压缩空间做法

private int INVALID = 0;

public int change(int amount, int[] coins) {
    int[] dp = new int[amount+1];
    Arrays.fill(dp, INVALID);
    dp[0] = 1;

    for (int coin : coins) {
        for (int j = 1; j <= amount; j++) {
            int leftAmount = j - coin;
            if(leftAmount>=0){
                dp[j] = dp[j] + dp[leftAmount];
            }
        }
    }

    return dp[amount];
}

相关文章

网友评论

      本文标题:背包系列问题——换零钱2

      本文链接:https://www.haomeiwen.com/subject/yxcndktx.html