Círculo de amistad

Time Limit:
1 Sec
Memory Limit:
128Mb
Enviados:
49
Resuelto:
15

Descripción

Los chicos y chicas de INF-111 tienen un problema./*No, no creas, no estan estudiando.*/ Ell@s quieren formar un circulo de amistad (literalmente un círculo) pero son algo sangron@s, no quieren que en el círculo entre algun "desconocido"... es decir, quieren que en el círculo todos se consideren amigos entre si. Se define que, si una persona A se considera aamig@ de una persona B y B se considera amig@ de C entonces A se considera amig@ de C.
Si A se considera amig@ de B no se garantiza que B se considere o no amig@ de A (repito, sangron@s).
Cada chico y chica tiene una persona a la que se considera su mejor amig@, si pudieras cambiar la elección de el/la mejor amig@ de una persona, ¿cuál es el máximo número de personas en el círculo de amistad que se puede formar?

Se le da el número de estudiantes en la materia de INF-111, denominada n. La segunda línea de entrada tiene un secuencia de número a[1], a[2], a[3], ..., a[n], indicando que el mejor amigo de i es a[i]. Se garantiza que i!=a[i] y que existe por lo menos una persona tal que todas las demás se consideran amig@s de esta.

Entrada

Se le da el número de estudiantes en la materia de INF-111, denominada n. La segunda línea de entrada tiene un secuencia de número a[1], a[2], a[3], ..., a[n], indicando que el mejor amigo de i es a[i]. Se garantiza que i!=a[i].

2<=n<=100000
1<=a[i]<=n

Se garantiza que existe por lo menos una persona X tal que todas las demás personas Y se consideran amigas de X.

Salida

Imprimir cuál sería el máximo número de personas en el círculo de amistad si se puede cambiar a lo más el valor de algun a[i].

Ejemplo Entrada

Copy icon
8
2 4 1 5 3 3 6 5

Ejemplo Salida

Copy icon
7

Ayuda