Start: Feb, 04, 2024 16:00:00
20240205并查集+最小生成树
End: Apr, 04, 2024 20:00:00
Time elapsed:
Time remaining:

最大集合 1838

Time Limit:  1 Sec    Memory Limit:   128 MB
Submission:20     AC:5     Score:100


Description

给定一个 $1-N$ 的排列 A[1], A[2], ... A[N],定义集合 S[K] = {A[K], A[A[K]], A[A[A[K]]] ... }。  

显然对于任意的 $K=1..N$,S[K]都是有限集合。  

你能求出其中包含整数最多的 $S[K]$ 的大小吗?

Input

第一行包含一个整数 $N$。$(1 \le N \le 100000)$  

第二行包含 $N$ 个两两不同的整数,A[1], A[2], ... A[N]。$(1 \le A[i] \le N)$

Output

最大的 $S[K]$ 的大小。

Samples

input:
7 6 5 1 4 2 7 3
output:
4