玄关,求调
  • 板块灌水区
  • 楼主hkl99
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/7 22:02
  • 上次更新2024/8/7 22:15:04
查看原帖
玄关,求调
770439
hkl99楼主2024/8/7 22:02

题目

代码:

#include<bits/stdc++.h>
using namespace std;
int n,e[14];
bool a[14],b[27],c[27];
void print(){
	for(int i=1;i<=n;i++){
		printf("%d ",e[i]);
	}
	printf("\n");
}
int dfs(int dep){
	if(dep==n+1){
		print();
	}
	else{
		for(int i=1;i<=n;i++){
			if(a[i]&&b[dep+i-1]&&c[dep-i+n]){
				e[dep]=i;
				a[i]=false;
				b[dep+i-1]=false;
				c[dep-i+n]=false;
				dfs(dep+1);
				a[i]=true;
				b[dep+i-1]=true;
				c[dep-i+n]=true;
			}
		}
	}
}
int main(){
	scanf("%d",&n);
	memset(a,true,sizeof(a));
	memset(b,true,sizeof(b));
	memset(c,true,sizeof(c));
	dfs(1);
	return 0;
}

RE了

悬赏关注!!!

2024/8/7 22:02
加载中...