leetcode-52-N-Queens II

来源:互联网 发布:java 0x 转换 int 编辑:程序博客网 时间:2024/05/21 08:36

                                                                                                             

N-Queens II

 

Follow up for N-Queens problem.

Now, instead outputting board configurations, return the total number of distinct solutions.

n皇后问题 

详文请见八皇后



leetcode AC代码

class Solution {public:    int num;    void queen(int* a,int n,int m){   //填充第m个        if(m==n) num++;        else{            for(int i=0;i<n;i++){ //  填充有n个选择                int ok=1;                for(int j=0;j<m;j++){                    if(i==a[j]||abs(i-a[j])==abs(j-m)){  // 第                        ok=0;break;                    }                }                if(ok){                    a[m]=i;                    queen(a,n,m+1);                }            }        }    }    int totalNQueens(int n) {        int a[100],i,j; //a[i]代表第i行(每一行一个皇后)的皇后在a[i]列         num=0;        queen(a,n,0); // 一开始填充第0个皇后的位置        return num;     }


0 0
原创粉丝点击