这道题按照没接触过算法的普通人的思路是手动把每种思路都列举出来,直接,但却容易遗漏,作为优秀的准程序员当然要用算法思想来解决拉 public int change(int amount, int[] coins) { int[] dp = new int[amount+1]; //得到金额为0有一种方案 dp[0] = 1; for(int coin : coins) { for(int i = 1;i <= amount;i++) { //表示dp[i]可以由dp[i-coin]得到 if(i - coin >= 0) dp[i] += dp[i - coin]; } } return dp[amount]; }

相关推荐

双尔:你就写拥有ai开发经历,熟练运用提示词,优化ai,提高ai回答质量
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务