Memoize possible_values set
This commit is contained in:
parent
1549269661
commit
f7b6fb053f
1 changed files with 4 additions and 1 deletions
|
@ -20,6 +20,7 @@ class Sudoku:
|
|||
else:
|
||||
self._board = bytearray(sz4)
|
||||
self._clues = frozenset()
|
||||
self._possible_values = None
|
||||
|
||||
@property
|
||||
def size(self):
|
||||
|
@ -62,7 +63,9 @@ class Sudoku:
|
|||
The set of valid values for any grid square. This method does not account for values made invalid by already
|
||||
being present in a peer of a given square.
|
||||
'''
|
||||
return set(range(1, self.row_size + 1))
|
||||
if not self._possible_values:
|
||||
self._possible_values = set(range(1, self.row_size + 1))
|
||||
return self._possible_values
|
||||
|
||||
@property
|
||||
def rows(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue