diff --git a/Nqueens.java b/Nqueens.java new file mode 100644 index 0000000..d70570c --- /dev/null +++ b/Nqueens.java @@ -0,0 +1,57 @@ +import java.util.*; +public class Nqueens{ + static int n; + static int[][] board; + + static boolean isSafe(int r, int c){ + for(int i=0;i=0 && j>=0;i--,j--){ + if(board[i][j]==1) + return false; + } + for(int i=r,j=c;i>=0 && j current= new ArrayList<>(); + + static void subset(int index, int sum, ArrayList current){ + if(sum==target){ + found = true; + System.out.println("\nSubset found: "+current); + return; + } + if(arr.length == index || sum>target){ + return; + } + current.add(arr[index]); + subset(index+1, sum+arr[index], current); + current.remove(current.size()-1); + subset(index+1, sum, current); + } + public static void main(String[] args){ + Scanner sc= new Scanner(System.in); + System.out.println("\nEnter size of array: "); + int n = sc.nextInt(); + arr = new int[n]; + System.out.println("\nENter array elements: "); + for(int i=0;i()); + if(!found){ + System.out.println("\nNo subset found"); + } + sc.close(); + } +}