问题 1969 --交友派对

1969: 交友派对★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 224  解决: 97
[提交][状态][命题人:]

题目描述

有N名员工,编号从1到N。每名员工要么没有直接经理,要么只有一个直接经理,直接经理也是这N名员工中的一名。员工A和员工B满足下列条件之一,可以认为员工B是员工A的上司:

1,员工B是员工A的直接经理

2,员工B有一名直接员工C,员工C是员工A的上司。

没有一名员工是自己的直接经理或者上司。

今天公司要举行一次交友派对,要将N名员工分组,要求是组内的任何两名员工不是上司关系。

小曹想知道最少可以将员工分成几组呢?

输入

输入包含多组数据,不超过10组。

每组数据两行,第一行一个整数N(1<=N<=20000),第二行N个整数,第i(1<=i<=N)个整数A[i]表示第i名员工的直接经理,A[i]=-1表示这名员工没有直接经理。

输出

每组数据输出一行,一个整数表示最少将员工分成几组。


样例输入
Copy
5
-1 -1 -1 -1 -1
样例输出
Copy
1

提示

来源

 

[提交][状态]