public class Solution {
public int CoinChange(int[] coins, int amount) {
int[] dp=new int[amount+1];
dp[0]=0;
for(int j=1;j<=amount;j++) {
dp[j]=int.MaxValue-1;//初始化
for(int i= 0;i<coins.Length;i++){
if(j-coins[i]>=0){
dp[j]=Math.Min(dp[j-coins[i]]+1,dp[j]);
}
}
}
return dp[amount]==int.MaxValue-1?-1:dp[amount];
}
}