python 数独_Python中的数独检查器

本文介绍了使用Python创建一个数独检查器的过程,检查器旨在验证一个9x9的数独矩阵是否合法,即每行、每列和每个3x3宫格中数字1-9不重复。目前代码能检查行的数量和每行元素数量,但在检查行内数字重复时遇到困难。作者希望通过循环和计数列表来实现这一功能,但遇到了问题,寻求帮助解决。
摘要由CSDN通过智能技术生成

我正在尝试用python创建一个数独检查器:ill_formed = [[5,3,4,6,7,8,9,1,2],

[6,7,2,1,9,5,3,4,8],

[1,9,8,3,4,2,5,6,7],

[8,5,9,7,6,1,4,2,3],

[4,2,6,8,5,3,7,9], #

[7,1,3,9,2,4,8,5,6],

[9,6,1,5,3,7,2,8,4],

[2,8,7,4,1,9,6,3,5],

[3,4,5,2,8,6,1,7,9]]

easy = [[2,9,0,0,0,0,0,7,0],

[3,0,6,0,0,8,4,0,0],

[8,0,0,0,4,0,0,0,2],

[0,2,0,0,3,1,0,0,7],

[0,0,0,0,8,0,0,0,0],

[1,0,0,9,5,0,0,6,0],

[7,0,0,0,9,0,0,0,1],

[0,0,1,2,0,0,3,0,6],

[0,3,0,0,0,0,0,5,9]]

我期待这样的输入-一个由9个列表组成的列表。零表示用户尚未填写的数字。它们可以在一行、一列或3x3中多次出现。def check_sudoku(grid):

if len(grid) == 9:

numsinrow = 0

for i in range(9):

if len(grid[i]) == 9:

numsinrow += 1

if numsinrow == 9:

for i in range(9):

rowoccurence = [0,0,0,0,0,0,0,0,0,0]

f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值