Adjust possible_values_for_square to behave like dlx expects

This commit is contained in:
Eryn Wells 2017-10-16 12:40:29 -07:00
parent 3689ac6974
commit 2529533661
2 changed files with 7 additions and 3 deletions

View file

@ -68,8 +68,12 @@ class Sudoku:
return self._possible_values
def possible_values_for_square(self, x, y):
peers = self.peers(x, y)
return self.possible_values - peers
value = self.get(x, y)
if value:
return {value}
else:
peers = self.peers(x, y)
return self.possible_values - peers
@property
def rows(self):

View file

@ -124,7 +124,7 @@ def _build_headers(sudoku):
def _build_rows(sudoku, headers):
for (index, coords) in enumerate(sudoku.all_squares):
board_value = sudoku.get(*coords)
possibilities = {board_value} if board_value else sudoku.possible_values_for_square(*coords)
possibilities = sudoku.possible_values_for_square(*coords)
for value in possibilities:
cur = None
for col in headers.iterate_row():