问题:
给定无限个四分之一(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;
}

请告诉我我的执行是否正确。

最佳答案

一个解决方法是确保递归调用不会使用比上次使用的硬币大的硬币。

07-27 13:31