1
0
mirror of https://gitlab.com/MisterBiggs/sudoku.git synced 2025-08-03 12:11:29 +00:00

init commit

This commit is contained in:
2020-05-21 00:03:20 -07:00
commit 7bc31f4d4a
6 changed files with 83 additions and 0 deletions

31
sudoku-python/puzzles.py Normal file
View File

@@ -0,0 +1,31 @@
import numpy as np
# By Tim Stellmach, CC0, https://commons.wikimedia.org/w/index.php?curid=57831926
board = np.array(
[
[5, 3, 0, 0, 7, 0, 0, 0, 0],
[6, 0, 0, 1, 9, 5, 0, 0, 0],
[0, 9, 8, 0, 0, 0, 0, 6, 0],
[8, 0, 0, 0, 6, 0, 0, 0, 3],
[4, 0, 0, 8, 0, 3, 0, 0, 1],
[7, 0, 0, 0, 2, 0, 0, 0, 6],
[0, 6, 0, 0, 0, 0, 2, 8, 0],
[0, 0, 0, 4, 1, 9, 0, 0, 5],
[0, 0, 0, 0, 8, 0, 0, 7, 9],
]
)
# By en:User:Cburnett, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=57831971
sol = np.array(
[
[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, 1],
[7, 1, 3, 9, 2, 4, 8, 5, 6],
[9, 6, 1, 5, 3, 7, 2, 8, 4],
[1, 8, 7, 4, 1, 9, 6, 3, 5],
[3, 4, 5, 2, 8, 6, 1, 7, 9],
]
)

33
sudoku-python/sudoku.py Normal file
View File

@@ -0,0 +1,33 @@
import numpy as np
from puzzles import board, sol
# for x in board:
# print(x)
new_board = board[::]
for i, v in enumerate(np.reshape(new_board, (9 * 9, 1))):
row_i = i // 9
col_i = i % 9
row = new_board[row_i, :]
col = new_board[:, col_i]
# print(row_i)
grid_r = row_i // 3
grid_c = col_i // 3
# print(grid_r,grid_c)
grid = new_board[grid_r : grid_r + 3, grid_c : grid_c + 3]
print(grid)
def row_check(row, val):
return val in row
def col_check(col, val):
return val in col
def grid_check(grid, val):
return val in grid