N Queen(其实我也很迷)

题目描述
在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。
你的任务是,对于给定的N,求出有多少种合法的放置方法。
输入
测试数据由多组测试样例组成。每组测试数据第一行输入一个正整数 n ( 1 <= n <= 10 )
输出
输出有多少种合法的放置方法
样例输入 Copy
1
5
样例输出 Copy
1
10
在这里插入图片描述

说实话很难,现在是勉强看懂了,但真要写可能会出各种问题,这个博客是用来记录的。一张张说吧,OK,Its My Time.

在这里插入图片描述
开头,dio是用来调试45度方向的。先把棋盘填满。

在这里插入图片描述
用来搜查x,y轴和45度角方向有无别的皇后,之前二维数组搞混了,没想通,这个斜角真的很迷。
在这里插入图片描述
接着dfs递归回溯,由于容易超时,这里修改一下。慢慢悟。

发布了17 篇原创文章 · 获赞 0 · 访问量 326

猜你喜欢

转载自blog.csdn.net/inaba233/article/details/104720427
N!
n
N*