LeetCode 51. N-Queens

题目

 

N 皇后问题。

 

其实就是DFS或者BFS的入门题。

要是可以用位运算来模拟皇后的摆放和棋盘,那么代码就很优雅了。

 

class Solution {
public:
    vector> ans;
    int a[100][100];
    int m;
    vector> solveNQueens(int n) {
        
        m=n;
        memset(a,0,sizeof(a));
        fun(0);
        
        return ans;
    }
      
    
    void fun(int pos)
    {
        if(pos==m)
        {
            ans.push_back(getString());
            return;
        }
        for(int i=0;i=0)
                a[i][y-tag]+=num;
            
            tag++;
        }
    }
    
    vector getString()
    {
        vector res;
       
        for(int i=0;i 
 

 

 

 

你可能感兴趣的:(LeetCode 51. N-Queens)