diff --git a/N-Queens.cpp b/N-Queens.cpp new file mode 100644 index 0000000..d173f77 --- /dev/null +++ b/N-Queens.cpp @@ -0,0 +1,51 @@ +class Solution { +public: + bool isSafe(int row,int col,vector&board,int n){ + + for(int i=col; i>=0; i--){ + if(board[row][i]=='Q') return false; + } + + int j=col,i=row; + while(i>=0 && j>=0){ + if(board[i][j]=='Q') return false; + i--; + j--; + } + + i=row,j=col; + while(i=0){ + if(board[i][j]=='Q') return false; + i++; + j--; + } + + return true; + } + void func(int col,vector&board,vector>&ans,int n){ + if(col==n){ + ans.push_back(board); + return; + } + + for(int row=0; row> ans; + vector board(n); + string s(n,'.'); + for(int i=0; i