#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;
}