# 看起来木有问题阿!全部RE!
查看原帖
# 看起来木有问题阿!全部RE!
469778
xujialin268楼主2021/8/13 11:27

救救孩子叭!

#include<iostream>
using namespace std;
bool b[25],c[25],d[25];
int a[10005],n,sum=0;
int search(int);
int print();
int main()
{
	cin>>n;
	search(1);
	cout<<sum;
	return 0;
}
int search(int i)
{
	int j;
	for(j=1;j<=n;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==n) print();
		else search(i+1);
		b[j]=0;//回溯 
		c[i+j]=0;
		d[i-j+7]=0;
	}
}
int print()
{
	sum++;
	if(sum<=3)
	{
		for(int i=1;i<=n;i++)
			cout<<a[i]<<" ";
		cout<<endl;
	}
}//谢谢啦!!
2021/8/13 11:27
加载中...