Există N
candidați la alegerile prezidențiale. Fiecare dintre cei N
candidați știe exact cu cine va vota. O persoană poate vota o singură altă persoană (se poate vota și pe sine). Scopul tău este să creezi confuzie între candidați. Pentru asta, ai dreptul să le interzici la cel mult K
dintre candidați să participe. Atunci când un candidat este eliminat, toți candidații care ar fi votat cu el votează cu persoana cu care ar fi votat candidatul eliminat (deoarece au încredere în decizia sa). Dacă cel eliminat ar fi votat cu sine sau era INDECIS, toți cei care ar fi votat cu el devin INDECIȘI. Pe scurt, dacă A
votează cu B
și B
votează cu C
, după ce îl elimini pe B
, A
va vota cu C
. Dacă A
votează cu B
și B
votează cu B
, după ce îl elimini pe B
, A
va deveni INDECIS. De asemenea, dacă A
votează cu B
și B
este INDECIS, după ce îl elimini pe B
, A
va deveni INDECIS. Un candidat este considerat “decis” dacă NU este eliminat și NU este INDECIS.
Cerința
Pentru fiecare K
de la 1
la N
, se cere numărul minim de candidați “deciși” pe care îi putem avea dacă am elimina K
dintre candidați.
Date de intrare
Pe prima linie a fișierului de intrare politic.in
se va afla numărul natural N
, reprezentând numărul de candidați. Urmează N
linii. Pe linia i + 1
, se va afla un număr natural, reprezentând candidatul cu care votează candidatul cu numărul i
.
Date de ieșire
Fișierul de ieșire politic.out
va conține N
linii. Pe linia i
se va afișa un singur număr natural, reprezentând numărul minim de candidați deciși în cazul în care eliminăm i
candidați.
Restricții și precizări
1 ≤ N ≤ 1000
- Pentru teste în valoare de 30 puncte,
N ≤ 200
- Candidații sunt indexați de la
1
.
Exemplu:
politic.in
6 2 6 2 5 5 5
politic.out
3 2 0 0 0 0
Explicație
Eliminând candidatul 5
, candidații 4
și 6
devin indeciși, așa ca rămân doar 3
candidați deciși (1
, 2
și 3
). Eliminând în continuare candidatul 6
, candidatul 2
devine indecis fiindcă 6
era indecis. Astfel, doar 1
și 3
rămân deciși. Eliminând nodul 2
, nu mai rămâne niciun candidat decis.