Introduction - If you have any usage issues, please Google them yourself
Background
This a classical problem. N Queens are placed on a N x N checkerboard. There should not be more than one "Queen" on the same horizontal line, nor on the same vertical, nor on the same diagonal line.
Given the size of a checkerboard N, write a program to generate all possible solutions of placing N "Queens" on the board in ascending order.
eg. Given the size of the checkerboard is 4, the possible solutions of placing "Queens" is as follow:
2413
3142
The first solution of the example above is:
Place a "Queen" at 1st column 2nd row
Place a "Queen" at 2nd column 4th row
Place a "Queen" at 3rd column 1st row
Place a "Queen" at 4th column 3rd row
Since 2413 < 3142, the ouput is sorted in ascending order.
Input
Input contains an integer N (1 <= N <= 10), the size of the checkerboard.
Output
Output all possible solutions of the given checkerboard size in ascending order. If there is no solution for the given size of the checkerboard, output NIL.