B. Найди шарик
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Петя и Вася играют в следующую игру. У Пети есть n непрозрачных стаканов, стоящих в ряд. Места, на которых стоят стаканы, пронумерованы целыми числами от 1 до n слева направо. Обратите внимание, что пронумерованы места, а не сами стаканы.

Сначала Петя кладет шарик под стакан, стоящий на месте номер s. Затем Петя совершает некоторое (возможно, нулевое) количество операций перемешивания. Одна операция перемешивания состоит в перемещении стакана на первом месте на место p1, стакана на втором месте на место p2 и так далее. То есть стакан с места i переместится на место pi. Считайте, что все перемещения стаканов происходят одновременно. Во время перемешивания стаканов шарик не перекатывается из стакана в стакан, он перемещается вместе с тем стаканом, в который его положили изначально.

После всех операций перемешивания Петя показывает Васе, что шарик оказался на месте t. Задача Васи состоит в том, чтобы сказать, какое минимальное количество операций перемешивания совершил Петя, или определить, что Петя совершил ошибку, и шарик не мог попасть из позиции s в позицию t.

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

В первой строке содержатся три целых числа: n, s, t (1 ≤ n ≤ 105; 1 ≤ s, t ≤ n) — количество стаканов, начальное положение шарика и конечное положение шарика. Во второй строке содержатся n целых чисел, разделенных пробелами: p1, p2, ..., pn (1 ≤ pi ≤ n) — параметры операции перемешивания. Гарантируется, что все pi различны.

Обратите внимание, что s может быть равно t.

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

Если шарик может переместиться с места s на место t, то в единственной строке выведите целое неотрицательное число — минимальное количество операций перемешивания, необходимых для того, чтобы шарик попал на место t. Если же это невозможно, то выведите число -1.

Примеры
Входные данные
4 2 1
2 3 4 1
Выходные данные
3
Входные данные
4 3 3
4 1 3 2
Выходные данные
0
Входные данные
4 3 4
1 2 3 4
Выходные данные
-1
Входные данные
3 1 3
2 1 3
Выходные данные
-1