Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.03 KB | None | 0 0
  1. def check_column(field, index):
  2.     used = set(field[index])
  3.     return used == {1, 2, 3, 4, 5, 6, 7, 8, 9}
  4.  
  5.  
  6. def check_row(field, index):
  7.     used = set()
  8.     for column in field:
  9.         used.add(column[index])
  10.     for num in [1, 2, 3, 4, 5, 6, 7, 8, 9]:
  11.         if num not in used:
  12.             return False
  13.     return len(used) == 9
  14.  
  15.  
  16. def check_square(field, row, column):
  17.     used = set()
  18.     for add_x in range(3):
  19.         for add_y in range(3):
  20.             used.add(field[row + add_x][column + add_y])
  21.     for num in [1, 2, 3, 4, 5, 6, 7, 8, 9]:
  22.         if num not in used:
  23.             return False
  24.     return len(used) == 9
  25.  
  26.  
  27. def check(field):
  28.     """Checks that given field if correct field of game Sudoku"""
  29.     for index in range(9):
  30.         if not check_row(field, index) or not check_column(field, index):
  31.             return "НЕТ"
  32.     for row in range(0, 7, 3):
  33.         for column in range(0, 7, 3):
  34.             if not check_square(field, row, column):
  35.                 return "НЕТ"
  36.     return "ДА"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement