#A1243. N皇后
N皇后
题目背景
八皇后问题(Eight Queens),是由国际象棋棋手马克斯·贝瑟尔于1848年提出的问题,是回溯算法的典型案例。
问题表述为:在8×8格的国际象棋棋盘上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一对角线上,问有多少种摆法。
题目描述
要在N×N(N≤8)的棋盘上放N个皇后,使得任意两个皇后都不能吃(皇后能吃同一行、同一列、同一对角线的其他皇后),求方案总数,并按字典序输出所有方案。每种方案输出每一行皇后的纵坐标,如果无解,输出"no solute"。
例如:当N=4时,下图是一种合法方案。
以下序列中的每个数是每行皇后的列坐标。
2 4 1 3
输入格式
一个整数N(1≤N≤8)。
输出格式
每行对应一种方案,按序列的字典序顺序输出棋盘每行上皇后的纵坐标,中间用空格分开;
最后输出方案总数。
输入/输出样例
4
2 1 4 3
3 1 4 2
2
说明/提示
时间1000ms,内存256MiB