// javaclassSolution{publicintcoinChange(int[] coins,int amount){int n = coins.length;int[] f =newint[amount+1];//记录状态
f[0]=0;int i,j;// f[1],f[2], ..., f[amount]for(i=1;i<=amount;i++){
f[i]=Integer.MAX_VALUE;for(j=0;j<n;j++){//一共有n枚硬币if(i>=coins[j]&& f[i-coins[j]]!=Integer.MAX_VALUE){
f[i]=Math.min(f[i-coins[j]]+1, f[i]);}}}if(f[amount]==Integer.MAX_VALUE){
f[amount]=-1;}return f[amount];}}
# python3classSolution:defcoinChange(self, coins: List[int], amount:int)->int:
n =len(coins)
f =[10000for i inrange(amount+1)]
f[0]=0for i inrange(amount):
i = i +1for j inrange(n):if i>=coins[j]and f[i-coins[j]]!=10000:
f[i]=min(f[i-coins[j]]+1, f[i])if f[amount]==10000:
f[amount]=-1return f[amount]
322 coins changeclass Solution { public int coinChange(int[] coins, int amount) { int n = coins.length; int[] f = new int[amount+1]; //记录状态 f[0] = 0; int i,j; // f[1],f[2], ..., f[amount] for(i=1;i<=amount;i++){ f[i] = Integer.MAX_