# Include <stdio. h>
# Include <stdlib. h>
# Define max 20
Int Queen [Max];
Int COUNT = 0;
Int Quen [Max];
Void print (int n)
{
// Count ++;
// Printf ("% d/N", count );
// If (count> 2) Exit (1 );
Int K = 0;
If (k) Exit (1 );
For (INT I = 1; I <= N; I ++)
// Printf ("% d/N", I, Queen [I]);
{
// Quen [I] = Queen [I];
Printf ("% d/N", I, Queen [I]);
K ++;
}
// Printf ("/N ");
}
/*
Void display (int n)
{
For (INT I = 1; I <= N; I ++)
Printf ("% d/N", I, Quen [I]);
}
*/
Int find (int I, int K) // I indicates the row, and K indicates the column.
{
Int J;
J = 1;
While (j <K)
{
If (Queen [J] = I) | (ABS (Queen [J]-I) = ABS (J-k ))) // whether the same row or on its diagonal line
Return 0;
J ++;
}
Return 1;
}
Void place (int K, int N)
{
If (k> N)
{
// Print (N );
// Count ++;
Print (N );
Exit (0 );
}
Else
{
For (Int J = 1; j <= N; j ++)
{
If (find (j, k) // J, N represents rows and columns respectively
{
Queen [k] = J;
Place (k + 1, n );
}
}
}
}
Int main ()
{
Int N;
Scanf ("% d", & N );
/*
If (n <1 | n> 13 | n = 2 | n = 3)
{
Printf ("% d", 0 );
Return 0;
}
*/
Place (1, N );
// Printf ("% d/N", count );
// Print (N );
// Display (N );
Return 0;
}