package com.company;
public class LeetCodeCoinCount {
public static int coinCount(int [] coins,int M){
int len=coins.length;
int i,j;
int[] f =new int[M+1];
f[0]=0;
for(i=1;i<f.length;++i){
f[i]=Integer.MAX_VALUE;
for(j=0;j<len;++j){
/* int tmpFi=f[i];
int coinsJ=coins[j];
Boolean a=i>=coins[j];
if(a) {
int res=f[i - coins[j]];
Boolean b = (f[i - coins[j]] != Integer.MAX_VALUE);
Boolean c = f[i - coins[j]] + 1 < f[i];
}*/
if(i>=coins[j]&&f[i-coins[j]]!=Integer.MAX_VALUE&&f[i-coins[j]]+1<f[i])
f[i]=f[i-coins[j]]+1;
}
}
if(f[M]==Integer.MAX_VALUE){
return -1;
}else{
return f[M];
}
}
public static void main(String[] args) {
int[] coins ={2,3};
int count = coinCount(coins, 9);
System.out.println(count);
}
}