using namespace std;
int n,score=0,p;
int a[15],shu[15],xie1[30],xie2[15];
void print()
{
int j;
for (j = 1; j <= n; j++)
cout << a[j]<< ' ';
cout << '\n';
}
void search(int i)
{
if (i == n+1)
{
score++;
if (score <= 3) print();
return;
}
else
{
for (p=1; p <= n; p++)
{if (!shu[p]&&!xie1[p+i]&&!xie2[p-i+n])
{
a[i] = p;
shu[p] = 1;
xie1[p + i] = 1;
xie2[p - i + n] = 1;
search(i + 1);
//a[i] = 0;
shu[p] = 0;
xie1[p + i] = 0;
xie2[p - i + n] = 0;
}
}
}
}
int main()
{
cin >> n;
search(1);
cout << score;
return 0;
}```