八皇后RE求助
  • 板块灌水区
  • 楼主XYQ_102
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/1/7 16:19
  • 上次更新2024/1/7 18:45:05
查看原帖
八皇后RE求助
712337
XYQ_102楼主2024/1/7 16:19
#include<bits/stdc++.h>
using namespace std;
int sum=0,a[1000000],n;
bool d[1000000]={false},b[1000000]={false},c[1000000]={false};
void print() 
{
	if(sum<3)
	{
		for(int k=1;k<=n;k++)
			cout<<a[k]<<" ";
		cout<<"\n";
	}
	sum++;
}
int dfs(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 
				dfs(i+1);
			b[j]=0,c[i+j]=0,d[i-j+7]=0;
		}
}
int main()
{
	cin>>n;
	dfs(1);
	cout<<sum;
	return 0;
}

0pts 全部 RE

2024/1/7 16:19
加载中...