Експедиція
Планується відправити експедицію до сусідньої зоряної системи. Було відібрано n кандидатів, пронумерованих від 1 до n, серед яких потрібно обрати учасників експедиції. Організатори прагнуть відправити якомога більше кандидатів.
Серед кандидатів провели опитування, під час якого кожен міг вказати не більше одного з інших кандидатів, з яким він не бажає вирушати в експедицію. Результатом опитування для i-го кандидата є ціле число a[i]
, яке відповідає номеру кандидата, з яким i-й кандидат не готовий вирушати в експедицію, або -1, якщо i-й кандидат готовий вирушати з будь-яким складом.
Тепер організатори повинні обрати, хто з кандидатів вирушить в експедицію. Вирішено, що якщо в експедицію входить певний кандидат i і a[i]
≠ -1, то кандидат a[i]
не може бути включений. Організатори прагнуть обрати максимальну кількість учасників експедиції.
Напишіть програму, яка за заданими результатами опитування кандидатів визначає максимальну кількість кандидатів, яких можна відправити в експедицію.
Вхідні дані
У першому рядку знаходиться ціле число n (1 ≤ n ≤ 300 000) - кількість кандидатів. У наступних n рядках наведено результати опитування, i-й з цих рядків містить результат опитування i-го кандидата, ціле число a[i]
(a[i]
= -1 або 1 ≤ a[i]
≤ n, a[i]
≠ i).
Вихідні дані
Виведіть одне ціле число - максимальну кількість кандидатів, яких можна відправити в експедицію.