做网站建设小程序,wordpress插件一键,做微信小程序网站,wordpress图片设置水印牛客网 BM59.
解题思路#xff1a;
行列、斜叉不在一条直线上。
命令行为 row, 列为col, row 从0开始递归直到最后一行#xff0c;列从0开始遍历#xff0c;直到最后一列#xff0c;中间每一步记录或清除位置状态#xff0c;状态分为 m1[col] 1, m2[row-col] 1, m3[r…牛客网 BM59.
解题思路
行列、斜叉不在一条直线上。
命令行为 row, 列为col, row 从0开始递归直到最后一行列从0开始遍历直到最后一列中间每一步记录或清除位置状态状态分为 m1[col] 1, m2[row-col] 1, m3[rowcol] 1。当row递归到最后一行时即获取一个符合要求的答案。
代码:
package main
// import fmt/*** 代码中的类名、方法名、参数名已经指定请勿修改直接返回方法规定的值即可** * param n int整型 the n* return int整型
*/
var m1 map[int]int{}
var m2 map[int]int{}
var m3 map[int]int{}var res 0func calc(row, n int) {if row n {resreturn}for col : 0; col n; col {if m1[col] 1 || m2[row-col] 1 || m3[rowcol] 1 {continue}m1[col] 1m2[row-col] 1m3[rowcol] 1calc(row1, n)m1[col] 0m2[row-col] 0m3[rowcol] 0}
}func Nqueen( n int ) int {// write code herecalc(0, n)return res
}