zoukankan      html  css  js  c++  java
  • Leetcode 518.零钱兑换II

    零钱兑换II

    给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 

    注意: 你可以假设

    • 0 <= amount (总金额) <= 5000
    • 1 <= coin (硬币面额) <= 5000
    • 硬币种类不超过500种
    • 结果符合32位符号整数

    示例 1:

    输入: amount = 5, coins = [1, 2, 5]

    输出: 4

    解释: 有四种方式可以凑成总金额:

    5=5

    5=2+2+1

    5=2+1+1+1

    5=1+1+1+1+1

    示例 2:

    输入: amount = 3, coins = [2]

    输出: 0

    解释: 只用面额2的硬币不能凑成总金额3。

    示例 3:

    输入: amount = 10, coins = [10]

    输出: 1

     1 public class Solution {
     2     public int change(int amount, int[] coins) {
     3         int[] table=new int[amount+1];
     4         table[0]=1;
     5         for(int i=0;i<coins.length;i++){
     6             for(int j=0;j<amount+1;j++){
     7                 if(j-coins[i]>=0){
     8                     table[j]+=table[j-coins[i]];
     9                 }
    10             }
    11         }
    12         return table[amount];
    13     }
    14 }
  • 相关阅读:
    python(对象与实例属性)
    python(类和对象相关知识)
    python(面向对象设计)
    网络基础知识
    python(hashlib)
    子网掩码划分
    cmd命令
    Linux学习第一天:Linux常用快捷键
    python猜数字小游戏
    while语句
  • 原文地址:https://www.cnblogs.com/kexinxin/p/10372526.html
Copyright © 2011-2022 走看看