heyZZZ @ 2024-02-22 15:42:26
#include<bits/stdc++.h>
using namespace std;
int n,cnt,a[100],x[3][28];
void dfs(int pos){
if(pos>n){
if(cnt<3){
for(int i=1;i<=n;i++) cout<<a[i]<<' ';
cout<<'\n';
}
cnt++;
return;
}
for(int i=1;i<=n;i++)
if(!x[0][i]&&!x[1][pos+i]&&x[2][pos-i+n]){
a[pos]=i;
x[0][i]=1;
x[1][pos+i]=1;
x[2][pos-i+n]=1;
dfs(pos+1);
x[0][i]=0;
x[1][pos+i]=0;
x[2][pos-i+n]=0;
}
}
int main(){
cin>>n;
dfs(1);
cout<<cnt;
return 0;
}
by heyZZZ @ 2024-02-22 15:42:57
全部输出0。