Beispiel #1
0
                x = random.randint(0, self.width - 1)
                y = random.randint(0, self.height - 1)
            hp_w, lp_w = self.pathsolver.longest_path((x, y))
            if hp_w:
                print('bad case: random chase, {}-th time'.format(i))
                return lp_w[0]
        print('fall back to hell case.')
        return 'U'


if __name__ == '__main__':
    dt = None
    with open('config.json', 'r') as f:
        dt = json.load(f)

    with open('output_9223372036568707794.log', 'r') as flog:
        data = flog.read()
    data = data.strip().split('\n')

    snake = Snake()
    snake.snakebody = []
    for d in data:
        x, y = d.split(' ')
        x = int(x)
        y = int(y)
        snake.snakebody.append((x, y))

    fruit = Fruit(dt)
    fruit.last_generate = (8, 0)
    solver = GreedySolver(snake, fruit, dt)
    print(solver.nextDirection())
Beispiel #2
0
        return (x + delX, y + delY)

    def shortest_path_fruit(self):
        return self.shortest_path(self.fruit.where())

    def longest_path_tail(self):
        return self.longest_path(self.snake.snakebody[-1])


if __name__ == '__main__':
    dt = None
    with open('config.json', 'r') as f:
        dt = json.load(f)

    with open('output_9223372036568707794.log', 'r') as flog:
        data = flog.read()
    data = data.strip().split('\n')

    snake = Snake()
    snake.snakebody = []
    for d in data:
        x, y = d.split(' ')
        x = int(x)
        y = int(y)
        snake.snakebody.append((x, y))

    fruit = Fruit(dt)
    fruit.last_generate = (3, 8)
    solver = PathSolve(snake, fruit, dt)
    # print(solver.longest_path(fruit.where()))
    print(solver.longest_path(snake.snakebody[-1]))