#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
const int N=15;
int a[N][N]={0};
bool flag(int x,int y){
for(int i=1;i<x;i++){
if(a[i][y]==1){
return 0;
}
}
for(int i=x-(y-1),j=1;i<x&&j<y;i++,j++){
if(a[i][j]==1){
return 0;
}
}
for(int i=x-1,j=y+1;i>=1&&j<=n;i--,j++){
if(a[i][j]==1){
return 0;
}
}
return 1;
}
int dfs(int cnt,int x,int y){
if(cnt==n){
return 1;
}
int s=0;
if(y!=n)
s+=dfs(cnt,x,y+1);
if(flag(x,y)){
a[x][y]=1;
s+=dfs(cnt+1,x+1,1);
a[x][y]=0;
}else{
if(y==n) return 0;
}
return s;
}
signed main() {
ios::sync_with_stdio(false);
cin>>n;
cout<<dfs(0,1,1);
return 0;
}