6.Python类与对象优质课件.pptVIP

  • 63
  • 0
  • 约12.22万字
  • 约 43页
  • 2022-05-17 发布于山东
  • 举报
* def conflict(state,nextX): nextY=len(state) for i in range(nextY): if abs(state[i]-nextX) in (0,nextY-i): return True return False def queens(num=8,state=()): for pos in range(num): if not conflict(state,pos): if len(state)==num-1: yield (pos,) else: for result in queens(num,state+(pos,)): yield (pos,)+result list(queens(4)) [(1, 3, 0, 2), (2, 0, 3, 1)] for solution in queens(8): print(solution) (0, 4, 7, 5, 2, 6, 1, 3) (0, 5, 7, 2, 6, 3, 1, 4) (0, 6, 3, 5, 7, 1, 4, 2) (0, 6, 4, 7, 1, 3, 5, 2) (1, 3, 5, 7, 2, 0, 6, 4) (1, 4, 6, 0, 2, 7, 5, 3) (1, 4, 6,

文档评论(0)

1亿VIP精品文档

相关文档