问题:
给定无限个四分之一(25美分)、一角硬币(10美分)、五分镍币(5美分)和一角硬币(1美分),计算表示n美分的方法的数量。
我的回答是:
public static int generateComb(int n){
if(n < 0){
return 0;
}
if(n == 0){
return 1;
}
int ways = generateComb(n-25) + generateComb(n-10) + generateComb(n-5) + generateComb(n-1);
return ways;
}
请告诉我我的执行是否正确。
最佳答案
一个解决方法是确保递归调用不会使用比上次使用的硬币大的硬币。