Advertisement
nikunjsoni

52

May 29th, 2021
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.60 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     int ans;
  4.     bool visd[30], visad[30], vis[30];
  5.    
  6.     int totalNQueens(int n) {
  7.         backtrack(0, n);
  8.         return ans;
  9.     }
  10.  
  11.     void backtrack(int col, int n){
  12.         if(col == n){
  13.             ans++;
  14.             return;
  15.         }
  16.         for(int row=0; row<n; row++){
  17.             if(!vis[row] && !visd[row-col+n-1]  && !visad[row+col]){
  18.                 vis[row] = visd[row-col+n-1] = visad[row+col] = true;
  19.                 backtrack(col+1, n);
  20.                 vis[row] = visd[row-col+n-1] = visad[row+col] = false;
  21.             }
  22.         }
  23.     }
  24. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement