Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- total_moves = 0 # Общ брой на движенията
- total_exits = 0 # Общ брой на възможните изходи
- longest_path = [] # Най-дългият път
- while next_free:
- x, y = next_free.pop(0)
- moves = 0 # Брой на движенията за текущата позиция
- # Проверка за движение наляво
- if position[0] == x and position[1] - y == 1:
- moves += 1
- # Проверка за движение надясно
- elif position[0] == x and y - position[1] == 1:
- moves += 1
- # Проверка за движение надолу
- elif x - position[0] == 1 and position[1] == y:
- moves += 1
- # Проверка за движение нагоре
- elif position[0] - x == 1 and position[1] == y:
- moves += 1
- # Обновяване на броя движения за текущата позиция
- total_moves += moves
- # Проверка дали текущата позиция е изход от лабиринта
- if position[0] == 0 or position[0] == (len(maze) - 1) or position[1] == 0 or position[1] == (len(maze[0]) - 1):
- total_exits += 1
- # Запазване на текущия път, ако е по-дълъг от предишния
- if moves > len(longest_path):
- longest_path = [(position[0], position[1])] + [(x, y) for x, y in next_free]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement