Ctrl K

Все маршруты к выходу

Средняя
Квест состоит из n комнат с номерами от 0 до n - 1. Из комнаты i ведут односторонние двери в комнаты из списка links[i]. Двери устроены так, что вернуться в уже пройденную комнату невозможно — циклов нет. Игрок начинает в комнате 0, выход — в комнате n - 1. Верните все различные маршруты от входа до выхода; каждый маршрут — список номеров комнат по порядку, от 0 до n - 1. Маршруты можно перечислить в любом порядке.
Пример 1
links=[[1, 2], [2, 3], [3], []] → [[0, 1, 3], [0, 2, 3], [0, 1, 2, 3]]

Из комнаты 0 до выхода 3 три маршрута: 0 → 1 → 2 → 3, 0 → 1 → 3 и 0 → 2 → 3.

Пример 2
links=[[2], [], [1]] → [[0, 2]]

Единственный маршрут 0 → 2 → 1: выход — комната с номером n - 1 = 1.

Пример 3
links=[[], [2], []] → []

Из комнаты 0 никуда не уйти, маршрутов нет.

Ограничения
  • 2 ≤ n ≤ 15
  • 0 ≤ links[i][j] < n
  • links[i] не содержит i и повторов
  • Циклов в графе нет
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПорядок сборки модулей СредняяОчередь на курсы СредняяСкладываются ли связи в дерево СредняяЛучшие корни дерева СредняяСколько изолированных групп в сети Средняя
загружаем Python…
Вход
links=[[1, 2], [2, 3], [3], []]
Ожидается
[[0, 1, 3], [0, 2, 3], [0, 1, 2, 3]]

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 72 теста на сервере, включая скрытые.