奇怪代码!!
查看原帖
奇怪代码!!
1045548
wyz0326楼主2024/11/8 22:37

我忘记写return了 但它AC了

#include<bits/stdc++.h>
using namespace std;
int a[130];
bool h[130],l[130],r[130];
int tot=0;
int n;
void dfs(int i){
	if(i>n){
	
		if(tot<=2){
			for(int k=1;k<=n;k++){
				cout<<a[k]<<" ";
			}
			cout<<endl;
		}	
		tot++;
	}
	for(int j=1;j<=n;j++){
		 if((!h[j])&&(!l[i+j])&&(!r[i-j+n])){
		 	a[i]=j;
		 	h[j]=1;
		 	l[i+j]=1;
		 	r[i-j+n]=1;
		 	dfs(i+1);
		 	h[j]=0;
		 	l[i+j]=0;
		 	r[i-j+n]=0;
		 }
		
	}
}
int main(){
	cin>>n;
	dfs(1);
	cout<<tot;
	return 0;
}

就离谱

2024/11/8 22:37
加载中...