Beispiel #1
0
    def new_sudoku(self):
        self.matrix, self.sudoku_size = sudoku_generator.gen()
        self.orig_matrix = copy.deepcopy(self.matrix)

        # Булевая матрица, описывающая местоположения элементов судоку, которые будут по умолчанию.
        # Их нельзя редактировать и выглядят внешне по другому
        self.def_num_matrix = [
            [bool(i) for i in row]
            for row in self.orig_matrix
        ]

        # Получим список решения этой судоку
        self.sudoku_solutions = list(solver.solve_sudoku(self.sudoku_size, copy.deepcopy(self.orig_matrix)))
Beispiel #2
0
    def new_sudoku(self):
        self.invalid_indexes.clear()

        self.matrix, self.sudoku_size = sudoku_generator.gen()
        self.orig_matrix = copy.deepcopy(self.matrix)

        # Булевая матрица, описывающая местоположения элементов судоку, которые будут по умолчанию.
        # Их нельзя редактировать и выглядят внешне по другому
        self.def_num_matrix = [[bool(i) for i in row]
                               for row in self.orig_matrix]

        # Получим список решения этой судоку
        self.sudoku_solutions = list(
            solver.solve_sudoku(self.sudoku_size,
                                copy.deepcopy(self.orig_matrix)))
Beispiel #3
0
    def new_sudoku(self):
        self.matrix, self.sudoku_size = sudoku_generator.gen()
        self.orig_matrix = copy.deepcopy(self.matrix)

        # Булевая матрица, описывающая местоположения элементов судоку, которые будут по умолчанию.
        # Их нельзя редактировать и выглядят внешне по другому
        self.def_num_matrix = [[bool(i) for i in row]
                               for row in self.orig_matrix]

        for i in range(len(self.matrix)):
            for j in range(len(self.matrix[i])):
                # TODO: сделать матрицу для ячеек
                cell = self._grid_layout.itemAtPosition(i, j).widget()
                num = self.matrix[i][j]
                if num:
                    cell.setText(str(num))

        # Получим список решения этой судоку
        self.sudoku_solutions = list(
            solver.solve_sudoku(self.sudoku_size,
                                copy.deepcopy(self.orig_matrix)))
Beispiel #4
0
    def new_sudoku(self):
        self.matrix, self.sudoku_size = sudoku_generator.gen()
        self.orig_matrix = copy.deepcopy(self.matrix)

        # Булевая матрица, описывающая местоположения элементов судоку, которые будут по умолчанию.
        # Их нельзя редактировать и выглядят внешне по другому
        self.def_num_matrix = [
            [bool(i) for i in row]
            for row in self.orig_matrix
        ]

        for i in range(len(self.matrix)):
            for j in range(len(self.matrix[i])):
                # TODO: сделать матрицу для ячеек
                cell = self._grid_layout.itemAtPosition(i, j).widget()
                num = self.matrix[i][j]
                if num:
                    cell.setText(str(num))

        # Получим список решения этой судоку
        self.sudoku_solutions = list(solver.solve_sudoku(self.sudoku_size, copy.deepcopy(self.orig_matrix)))