public class Test57 {
public static int ways(int[] arr, int aim) {
if (arr == null || arr.length == 0 || aim < 0) {
return 0;
}
return process(arr, 0, aim);
}
public static int process(int[] arr, int index, int rest) {
if (rest < 0) {
return 0;
}
if (index == arr.length) {
return rest == 0 ? 1 : 0;
}
int ways = 0;
for (int i = 0; i*arr[index] <= rest; i++) {
ways += process(arr, index + 1, rest - i*arr[index]);
}
return ways;
}
}
力扣518.零钱兑换II
于 2024-08-23 22:58:31 首次发布