八皇后(92种解)

时间:2021-02-05 10:58:33   收藏:0   阅读:0

//八皇后
#include<bits/stdc++.h>
using namespace std;
int a[9];
bool b[9],c[17],d[17];
int num;
int print()
{
 num++;
 for(int i=1;i<=8;i++)
 cout<<"("<<i<<","<<a[i]<<")"<<" ";
 cout<<endl;
}
int search(int i)
{
 for(int j=1;j<=8;j++)
  if((!b[j])&&(!c[i+j])&&(!d[i-j+7]))
  {
   a[i]=j;
   b[j]=1;
 c[i+j]=1;
   d[i-j+7]=1;
   if(i==8)print();
   else search(i+1);
   b[j]=0;
   c[i+j]=0;
   d[i-j+7]=0;
  }
}
int main()
{
 search(1);
 cout<<num;
}

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!