Это рекурсивный метод, который я пытаюсь использовать, но я получаю метод переполнения стека ... Я не могу сказать, что с ним не так?
public class NUMWAYS_JENRODRIGUEZ {
public static long numWays (int n, int k, int [] D) {
if (n == 0)
return 1;
if (n < 0)
return 0;
if (k <=0 && n >= 1)
return 0;
return numWays( n, k - 1, D ) +
numWays( n-D[k-1], k, D );
}
}