求助,找不到问题在哪里呜呜呜
查看原帖
求助,找不到问题在哪里呜呜呜
857289
Yukimiku楼主2023/9/4 19:10
#include<bits/stdc++.h>
using namespace std;
int n,a[1100],ans,b1[1000],b2[1000],b3[1000];
void dfs(int x)
{
	if(x>n){
		ans++;
		if(ans<=3){
		for(int i=1;i<=n;i++)	cout<<a[i]<<" ";
		cout<<endl;
	}
	return;}

	
	for(int i=1;i<=n;i++){
		if(b1[i]==0&&b2[x+i]==0&&b3[x-i+n]==0)
		{
			a[x]=i;
			b1[i]==1;b2[x+i]==1;b3[x-i+n]==1;
		
		dfs(x+1);
		b1[i]==0;b2[x+i]==0;b3[x-i+n]==0;}
	}

}
int main()
{
	scanf("%d",&n);
	dfs(1);
	printf("%d",ans);
	return 0;
}

2023/9/4 19:10
加载中...