全WA求调,会回关
查看原帖
全WA求调,会回关
1239074
woshiSBSBSBSB楼主2024/7/18 11:38
#include<bits/stdc++.h>
using namespace std;
int row[11],n,s;
bool col[11],line1[21],line2[20];
void dfs(int k){
	if(k==n+1){
		for(int i=1;i<=n;i++){
			if(s==3) break;
			cout<<row[i]<<" ";
		}
		cout<<endl;
		s++;
		return ;
	}
	for(int i=1;i<=n;i++){
		if(col[i]) continue;
		if(line1[k+i]) continue;
		if(line2[i-k+n]) continue;
		row[k]=i;
		col[i]=line1[k+i]=line2[i-k+n]=1;
		dfs(k+1);
		row[k]=0;
		col[i]=line1[k+i]=line2[i-k+n]=0;
	}
}
int main(){
    cin>>n;
    dfs(1);
    cout<<s;
    return 0;
}
2024/7/18 11:38
加载中...