当前位置: 首页 > news >正文

python解决8皇后问题

def is_valid(queens, row, col):for i in range(row):if queens[i] == col or abs(queens[i] - col) == abs(i - row):return Falsereturn Truedef solve_n_queens(n, row, queens, result):if row == n:result.append(queens[:])  # 将当前解添加到结果中returnfor col in range(n):if is_valid(queens, row, col):queens[row] = colsolve_n_queens(n, row + 1, queens, result)queens[row] = -1  # 回溯def n_queens(n):result = []queens = [-1] * n  # 初始化皇后位置为-1solve_n_queens(n, 0, queens, result)return result# 测试
n = 8  # 8皇后问题
solutions = n_queens(n)
for solution in solutions:for col in solution:row_str = '.' * col + 'Q' + '.' * (n - col - 1)print(row_str)print()

row_str = ‘.’ * col + ‘Q’ + ‘.’ * (n - col - 1) 这行代码用于构建一个字符串,表示当前行的皇

http://www.lryc.cn/news/118437.html

相关文章:

  • xcode打包导出ipa
  • 更优雅地调试SwiftUI—借助LLDB
  • 2.4 网络安全新技术
  • 人生天地之间,若白驹之过隙,忽然而已
  • MySQL — MVCC
  • Android模板设计模式之 - 构建整个应用的BaseActivity
  • 浏览器缓存技术--localStorage和sessionStorage原理与使用
  • 无涯教程-Perl - endservent函数
  • MRO工业品采购过程中,采购人员要注意哪些事项
  • Jaeger 教程,OpenTelemetry 教程
  • P1597 语句解析
  • Java课题笔记~ Request请求
  • Untiy Json和Xml的序列化和反序列化
  • springboot在线小说阅读网站的设计与实现
  • 整理mongodb文档:改
  • 【设计模式】单例模式
  • (2)原神角色数据分析-2
  • 138. 复制带随机指针的链表
  • Windows中redis怎么设置密码
  • 租赁OLED透明屏:打造独特商业体验的智慧选择
  • Nacos服务治理—负载均衡
  • flask-----初始项目架构
  • 揭秘史上最全可视化大屏模板,00后亲测好用到离谱,效率加速99%
  • nginx基于主机和用户访问控制以及缓存简单例子
  • React使用antd的图片预览组件,点击哪个图片就预览哪个的设置
  • 排序的介绍
  • appuploader使用教程
  • 企业权限管理(七)-权限操作
  • 【深度学习笔记】TensorFlow 常用函数
  • 函数的递归与迭代