Skip to content

Files

Latest commit

Ivan GurinIvan Gurin
Ivan Gurin
and
Ivan Gurin
Mar 7, 2024
b151927 · Mar 7, 2024

History

History
62 lines (38 loc) · 2.36 KB

README.md

File metadata and controls

62 lines (38 loc) · 2.36 KB

Тропинки в дремучем лесу

Условие задачи

В дремучем лесу есть множество полянок, некоторые из них соединены тропинками, а некоторые нет. Алеша Попович начинает свой путь на полянке A. Он должен зайти к Бабе Яге на полянку B за мечом-кладенцом, после чего направиться на полянку C на бой со Змеем Горынычем. Посчитайте, какое минимальное количество полянок, которое должен посетить Алеша Попович, если он боится посещать поляну C, пока не взял меч.

Входные данные

Все полянки занумерованы натуральными числами, не превышающими 2^31.

В первой строке вводится 3 значения:

  • A — номер полянки, где стартует Алеша;
  • B — номер полянки, где живет Баба Яга;
  • С — номер полянки, где Алешу ждет Змей Горыныч;

В следующей строке вводится N — количество тропинок, которое также не превышает 2^31.

Последующие N строчек имеют вид: start end, где start и end — номера полянок, которые соединены тропинкой. По тропинке можно пройти в любую сторону.

Выходные данные

Выведите 1 число — через какое количество полянок пролегает самый короткий маршрут проходящий из A в B, а потом в C, при том, что по пути из A в B поляну C посещать нельзя. Выведите -1, если маршрут, соответствующий условиям не существует.

Пример теста 1

Входные данные

1 2 3
3
1 5
2 5
2 3

Выходные данные

4

Пример теста 2

Входные данные

1 2 3
2
1 3
3 2

Выходные данные

-1