n перекрёстков, пронумерованных от 0 до n - 1, и односторонние дороги roads: пара [a, b] означает дорогу из a в b. Бывают петли (дорога из перекрёстка в него же) и несколько одинаковых дорог.
Курьер выезжает с перекрёстка start и на каждом шаге едет по любой доступной дороге, пока не окажется на перекрёстке, откуда дорог нет. Верните True, если при любом его выборе:
- он обязательно когда-нибудь остановится (нельзя кружить бесконечно);
- остановится он только на перекрёстке goal.
Иначе верните False. В частности, если из goal выходит хотя бы одна дорога, остановиться на нём нельзя.n=4, roads=[[0, 1], [0, 2], [1, 3], [2, 3]], start=0, goal=3 → True
Из 0 можно уйти в 1 или 2, но оба пути сходятся в 3, а из 3 дорог нет.
n=3, roads=[[0, 1], [1, 0], [0, 2]], start=0, goal=2 → False
Можно бесконечно ездить по кругу 0 → 1 → 0, так что маршрутов бесконечно много.
n=3, roads=[[0, 1], [0, 2]], start=0, goal=2 → False
Поехав в 1, мы застреваем в тупике, который не является целью.
n=4, roads=[[0, 1], [0, 2], [1, 3], [2, 3]], start=0, goal=3
True
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 75 тестов на сервере, включая скрытые.