X-Git-Url: http://gitweb.pimeys.fr/?p=sudoku.git;a=blobdiff_plain;f=sudoku_types.py;h=c34e7c8b10fb914cbb87475e6fa52c7242a3345f;hp=e70a0fd1a730285d7e112c23c702f6b4e2396d6d;hb=HEAD;hpb=bf9d28609ea65fd320add7e2af4ff941dd5781e7 diff --git a/sudoku_types.py b/sudoku_types.py index e70a0fd..c34e7c8 100644 --- a/sudoku_types.py +++ b/sudoku_types.py @@ -24,6 +24,13 @@ class SudokuType(object): field = self.linked_fields[field] values = [rouge + "X" + rien if i in field else "_" for i in range(self.size)] return self.render(values, False) + + def debug(self, pause=False): + """Affiche successivement tous les linked_fields""" + for f in self.linked_fields: + print self.render_field(f) + if pause: + raw_input(u"…".encode("utf-8")) class BasicSudoku(SudokuType): size = 81 @@ -44,7 +51,7 @@ class Samurai(SudokuType): chars = [str(i) for i in range(1, 10)] linked_fields = ( [[start + offset for offset in range(9)] for start in [0, 18, 36, 54, 72, 90, 108, 129, 150] + [9, 27, 45, 63, 81, 99, 120, 141, 162] + [114, 135, 156, 171, 180, 189, 204, 225, 246] + [198, 219, 240, 261, 279, 297, 315, 333, 351] + [210, 231, 252, 270, 288, 306, 324, 342, 360]] - # Après, j'ai eu la flemme de faire en finesse, j'ai bourrnié et j'hardcode + # Après, j'ai eu la flemme de faire en finesse, j'ai bourriné et j'hardcode # Les colonnes +[[0, 18, 36, 54, 72, 90, 108, 129, 150], [1, 19, 37, 55, 73, 91, 109, 130, 151], @@ -140,4 +147,4 @@ class examples: fail = "011111111000000000000000000000000000000000000000000000000000000000000000000000000" hard = "200000060000075030048090100000300000300010009000008000001020570080730000090000004" easy = "487000503056000000031500090000840051070605030310072000060009310000000970703000825" - samurai = "000385000000000100039000800960000040400000020003000060000000006000400005000076900000080004000100074290030007004000300010005020080080009000008000700900060007000004000306000064000000200040006000000170000609000900000400070007002000200000200090090030500060003000100500090042610009000900080000002530000300001000500000000040000800090000002010000095005000640002000000000685000" \ No newline at end of file + samurai = "000385000000000100039000800960000040400000020003000060000000006000400005000076900000080004000100074290030007004000300010005020080080009000008000700900060007000004000306000064000000200040006000000170000609000900000400070007002000200000200090090030500060003000100500090042610009000900080000002530000300001000500000000040000800090000002010000095005000640002000000000685000"