首页 > 试题广场 >

八皇后问题

[编程题]八皇后问题
  • 热度指数:595 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将 8 个皇后放在棋盘上(有8×8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。
对于某个满足要求的8皇后的摆放方法,定义一个皇后串a与之对应,即 a=b1b2...b8, 其中bi(1≤bi≤8)为相应摆法中第 i 行皇后所处的列数。已经知道8皇后问题一共有92组解(即92个不同的皇后串)。给出一个数n,要求输出第n个串。串的比较是这样的:皇后串x置于皇后串y之前,当且仅当将x视为整数时比y小。

输入描述:
输入包含多组数据。

每组数据包含一个正整数n(1≤n≤92)。


输出描述:
对应每一组输入,输出第n个皇后串。
示例1

输入

1
92

输出

15863724
84136275
头像 华山骚猪
发表于 2020-06-16 17:43:13
八皇后问题 链接:https://www.nowcoder.com/questionTerminal/de1e1ff46cd641178a147166156c9d83 来源:牛客网 会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将 8 个皇后放在棋盘上(有8×8 展开全文