1.[代码]解数独
def flatten(nested_list):
for value in nested_list:
if isinstance(value, list):
for nested_value in flatten(value):
yield nested_value
else:
yield value
def some(nested_list, fn):
for value in flatten(nested_list):
if fn(value):
return value
return None
class Cell(set):
def __init__(self, y, x):
self.marked = False
self.y = y
self.x = x
self.update(range(1, 10))
def is_explicit(self):
return len(self) == 1
def mark(self, value):
self.marked = True
self.clear()
self.add(value)
def set(self, values):
self.marked = False
self.clear()
self.update(values)
def value(self):
return next(iter(self))
def __str__(self):
size = len(self)</