#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
vector<int> v;
int ans = 0;
set<int> s;
int num = 0;
void dfs(int x){
if(x==n+1){
int num1 = 0,num2 = 0;
for(int i = 0;i < n;i++){
if(i+1==v[i]){
num1++;
}
} //第一对角线
for(int i = 0;i < n;i++){
if(n-i==v[i]){
num2++;
}
}//第二对角线
if(num1<=1&&num2<=1){
if(num<3){
for(int i = 0;i < n;i++){
cout<<v[i]<<' ';
}cout<<'\n';
}
++ans;++num;
return ;
}
}
for(int i = 1;i <= n;i++){
if(!s.count(i)){
v.push_back(i);
s.insert(i);
dfs(x+1);
s.erase(i);
v.pop_back();
}
}
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>n;
dfs(1);cout<<ans;
return 0;
//十年OI一场空,define int 见祖宗。
//十年OI一场空,不开long long见祖宗。
}
#7~#10 TLE,其它WA
能告诉萌新为什么吗????