不知道哪错了

//八皇后(数字串)
#include<bits/stdc++.h>
using namespace std;
int a[9],k[93][8];
bool b[9],c[17],d[17];
int num;
int zr()
{
num++;
for(int i=1;i<=8;i++)
{
k[num][i-1]=a[i];
cout<<i<<" "<<a[i]<<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)zr();
else search(i+1);
b[j]=0;
c[i+j]=0;
d[i-j+7]=0;
}
}
int main()
{
int n,u;
scanf("%d",&n);
for(int j=1;j<=n;j++)
{
scanf("%d",&u);
search(1);
for(int i=0;i<=7;i++)
cout<<k[u][i];
}

}

posted @ 2021-02-05 17:37  映波yoyo  阅读(24)  评论(0)    收藏  举报