有N名员工,编号从1到N。每名员工要么没有直接经理,要么只有一个直接经理,直接经理也是这N名员工中的一名。员工A和员工B满足下列条件之一,可以认为员工B是员工A的上司:
1,员工B是员工A的直接经理
2,员工B有一名直接员工C,员工C是员工A的上司。
没有一名员工是自己的直接经理或者上司。
今天公司要举行一次交友派对,要将N名员工分组,要求是组内的任何两名员工不是上司关系。
小曹想知道最少可以将员工分成几组呢?
有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表示这名员工没有直接经理。
每组数据输出一行,一个整数表示最少将员工分成几组。
5 -1 -1 -1 -1 -1
1