JavaAlgorithms/DynamicProgramming/Sum_Of_Subset.java

31 lines
754 B
Java
Raw Normal View History

2021-10-16 21:43:51 +08:00
package DynamicProgramming;
public class Sum_Of_Subset {
public static void main(String[] args){
int[] arr = { 7, 3, 2, 5, 8 };
int Key = 14;
if (subsetSum(arr, arr.length - 1, Key)) {
System.out.print("Yes, that sum exists");
}
else {
System.out.print("Nope, that number does not exist");
}
}
public static boolean subsetSum(int[] arr, int num, int Key)
{
if (Key == 0) {
return true;
}
if (num < 0 || Key < 0) {
return false;
}
boolean include = subsetSum(arr, num - 1, Key - arr[num]);
boolean exclude = subsetSum(arr, num - 1, Key);
return include || exclude;
}
}