Exemple #1
0
            if pos.isSolved():
                solution = pos.path
                break

            for newBoard, newEmpty, move in pos.possibleMoves():
                newPos = Positions(pos.level+1, newBoard,
                                   newEmpty, pos.path + self.tMove(move), self.n)
                if newPos not in self.visited:
                    self.visited.add(newPos)
                    self.queue.put(newPos)
        # print(time.time() - self.start, solution)
        return solution, time.time() - self.start


if __name__ == "__main__":
    from gamelogic import GameLogic
    f = open("data.csv", "a+")
    for _ in range(1000):
        g = GameLogic(4)
        g.shuffleBoard()
        board = g.getBoard()
        out = ""
        for i in range( len(board)):
            for n in board[i]:
                out += str(n) + ","
        soln = Solver(g, 4).getSolution()
        row = out +  str(len(soln)) + "\n"
        print(row)
        f.write(row)
    f.close()