コード例 #1
0
    def heuristic(self):
        number_squares = 0
        checker = Check(self.initState.board)

        for i in range(self.initState.size):
            if sum(self.initState.board[i]) == 0:
                for j in range(self.initState.size):
                    if checker.checkALL(i, j):
                        number_squares += 1

        return number_squares
コード例 #2
0
    def expand(self):
        nextStates = []

        checker = Check(self.initState.board)

        for i in range(self.initState.size):
            for j in range(self.initState.size):
                if checker.checkALL(i, j):
                    nextState = copy.deepcopy(self)
                    nextState.setVal(i, j, 1)
                    nextStates.append(nextState)
        return nextStates