11641. Секрет
У Степана є \(N\) друзів. Назвемо їх: Друг 1, Друг 2, …, Друг N. Одного разу Степан випадково провідомив одному зі своїх друзів, Другу \(X\), його таємницю. Для кожного \(i = 1, 2, \ldots, N\), коли друг \(i\) дізнається секрет, він/вона поділиться ним із другом \(A_i\), якщо Друг \(A_i\) ще цього не знає.
Скільки друзів Степана врешті дізнаються цого секрет?
Формат вхідних даних
Перший рядок містить цілі числа \(N,X\) (\(2 \le N \le 10^5\), \(1 \le X \le N\))
Наступний рядок містить \(N\) цілих чисел \(A_i\) (\(1 \le A_i \le N\), \(A_i \neq i\))
Числа у рядках розділяються пропуском.
Формат вихідних даних
У вихідний потік виведіть шукану кількість друзів.
Примітка
До прикладу 1:
Секрет Степан дізнаються Друг 1, Друг 2 і Друг 3, як показано нижче.
Степан повідомив Другу 2 секрет.
Друг 2 ділиться цим із другом 1.
Друг 1 ділиться цим із другом 3.
Зрештою, троє його друзів дізнаються секрет, тому ми виводимо 3.
Приклад вхідних даних
4 2
3 1 1 2
Приклад вихідних даних
3
Приклад вхідних даних
20 12
7 11 10 1 7 20 14 2 17 3 2 5 19 20 8 14 18 2 10 10
Приклад вихідних даних
7
Коментарі