当前位置:当前位置:首页 >时尚 >利用 MySQL 解八皇后问题 正文

利用 MySQL 解八皇后问题

[时尚] 时间:2025-11-05 08:08:41 来源:益强IT技术网 作者:系统运维 点击:53次
利用 MySQL 解八皇后问题
复制num = 0  def is_ok(queen,利用 row):      for r in range(1, row):          # 第 r 行与第 row 行皇后在同一列,冲突          if queen[r] == queen[row]:              returnFalse         t = abs(queen[r] - queen[row])          # 第 r 行与第 row 行皇后在同一斜线,皇后冲突          # 如果 2 个皇后所在位置的问题行差与列差相同,站群服务器则在同一斜线          if t == abs(r - row):              returnFalse     returnTrue def find(queen,利用 row):      global num      # 每一行都从第一列到第八列进行尝试      for col in range(1, (8+1)):          queen[row] = col          # 判断是否满足条件          if is_ok(queen, row):              if row == 8:                  num += 1                  return             # 如果没有到第八行,则继续递归              find(queen,皇后 row + 1)  # Python列表下标从0开始,免费源码下载为了从1开始,问题所以这样  queen = [0,利用1,2,3,4,5,6,7,8]  find(queen, 1)  print(result is , num)  1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.

(责任编辑:域名)

    相关内容
    精彩推荐
    热门点击
    友情链接