1708: 八皇后

内存限制:125 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:16 解决:8

题目描述

给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个皇后,使任意的两个皇后都不在同一行、同一列或同一条对角线上。

如下:


上面的放法可以用序列 2 4 6 1 3 5 来表示,第i个数字表示第i行皇后相应的放置位置。

行号:1 2 3 4 5 6

列号:2 4 6 1 3 5

请编一个程序找出所有皇后放置的解。
并把它们以上面的序列方法输出,解按字典顺序排列。
请输出前 4个解。最后一行是解的总个数。

输入

一行一个正整数 n,表示棋盘是 ×n 大小的。

输出

前四行为前四个解,每两个数字之间用空格隔开,最后一行为解的个数

样例输入 复制

6
7

样例输出 复制

2 4 6 1 3 5
3 6 2 5 1 4
4 1 5 2 6 3
5 3 1 6 4 2
4
1 3 5 7 2 4 6
1 4 7 3 6 2 5
1 5 2 6 3 7 4
1 6 4 2 7 5 3
40

提示

6 <= n <= 13