中级
Sudoku Grid
未完成 0%
中级参考
代码结构已给出,请填写 ____ 处
# Write your solution here
def solve(____):
for row in range(____, ____):
if not row_correct(____):
return False
for column in range(____, ____):
if not column_correct(____):
return False
for row in range(____, ____, ____):
for column in range(____, ____, ____):
if not block_correct(____):
return False
return True
def row_correct(____):
seen_numbers = []
for number in sudoku[row_no]:
if number != ____:
if number in seen_numbers:
return False
seen_numbers.append(____)
return True
def column_correct(____):
seen_numbers = []
for row in sudoku:
number = row[column_no]
if number != ____:
if number in seen_numbers:
return False
seen_numbers.append(____)
return True
def block_correct(____):
seen_numbers = []
for i in range(____):
for j in range(____):
number = sudoku[i][j]
if number != ____:
if number in seen_numbers:
return False
seen_numbers.append(____)
return True
if __name__ == "____":
sudoku1 = [
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____]
]
print(solve(____))
sudoku2 = [
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____],
[____, ____, ____, ____, ____, ____, ____, ____, ____]
]
print(solve(____))
示例
输入
sudoku1 = [ [9, 0, 0, 0, 8, 0, 3, 0, 0], [2, 0, 0, 2, 5, 0, 7, 0, 0], [0, 2, 0, 3, 0, 0, 0, 0, 4], [2, 9, 4, 0, 0, 0, 0, 0, 0], [0, 0, 0, 7, 3, 0, 5, 6, 0], [7, 0, 5, 0, 6, 0, 4, 0, 0], [0, 0, 7, 8, 0, 3, 9, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 3], [3, 0, 0, 0, 0, 0, 0, 0, 2] ] print(solve(sudoku1)) sudoku2 = [ [2, 6, 7, 8, 3, 9, 5, 0, 4], [9, 0, 3, 5, 1, 0, 6, 0, 0], [0, 5, 1, 6, 0, 0, 8, 3, 9], [5, 1, 9, 0, 4, 6, 3, 2, 8], [8, 0, 2, 1, 0, 5, 7, 0, 6], [6, 7, 4, 3, 2, 0, 0, 0, 5], [0, 0, 0, 4, 5, 7, 2, 6, 3], [3, 2, 0, 0, 8, 0, 0, 5, 7], [7, 4, 5, 0, 0, 3, 9, 0, 1] ] print(solve(sudoku2))
期望输出
False True
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199