eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Трамвай

Трамвай

Трамвайна мережа у Загребі складається з перехресть та рельс, які з'єднують деякі з них. На кожному перехресті є перемикач, який вказує на напрям, у якому можна виїхати з нього. Коли трамвай заїзджає на перехрестя, він може виїхати з нього лише у напрямку, на який вказує перемикач. Якщо водій хоче поїхати іншим шляхом, він повинен вручну змінити стан перемикача. Коли водію потрібно проїхати з перехреся \textbf{A} до перехреся \textbf{B}, він хоче вибрати такий шляхь, прїзджаючи по якому необхідно змінювати вручну стан перемикачів найменшу кількість разів. Напишіть програму, яка обчислить найменшу кількість змін перемикачів, необхідних для проїзду від перехрестя \textbf{A} до перехрестя \textbf{B}. \InputFile Перший рядок містить цілі числа \textbf{N}, \textbf{A та} \textbf{B }(\textbf{2} ≤ \textbf{N} ≤ \textbf{100}, \textbf{1} ≤ \textbf{A}, \textbf{B} ≤ \textbf{N}), відокремлені пропуском. \textbf{N} - кількість перехресть у мережі, пронумерованих від \textbf{1} до \textbf{N}. Кожен з наступних \textbf{N} рядків містить послідовність цілих чисел, відокремлених пропуском. Першим числом у \textbf{i}-му рядку знаходиться \textbf{K_i} (\textbf{0} ≤ \textbf{K_i} ≤ \textbf{N-1}) - кількість рельсових доріг, які виходять з \textbf{i}-го перехрестя. Наступні \textbf{K_i} чисел задають номери перекресть, безпосередньо зв'язаних з \textbf{i}-тим. Перемикач на \textbf{i}-му перехресті спочатку вказує у напрямку, який стоїть першим у перерахуванні. \OutputFile У єдиному рядку вивести щукане найменше число. Якщо шляху між \textbf{A} та \textbf{B} не існує, то вивести число \textbf{-1}.
Ліміт часу 1 секунда
Ліміт використання пам'яті 32 MiB
Вхідні дані #1
3 2 1
2 2 3
2 3 1
2 1 2
Вихідні дані #1
0
Джерело Croatian Highschool Competitions in Informatics 2002, Juniors