300600: CF115A. Party

Memory Limit:256 MB Time Limit:3 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Party

题意翻译

一家公司有 $n(1\le n\le2\times10^3)$ 名员工,从 $1$ 人到 $n$ 人。每个员工要么没有直接经理,要么只有一个直接经理,后者是另一个具有不同编号的员工。如果以下情况中至少有一个是正确的,则称 A 雇员是 B 雇员的上级: 雇员 A 是雇员 B 的直接经理。 雇员 B 有一个直接经理雇员 C,雇员 A 是雇员 C 的上级。 公司没有管理周期。也就是说,不存在一个员工是他/她自己的直接经理的上级。 今天公司将安排一个聚会。这涉及到将所有 $n$ 个雇员分为几个组:每个雇员必须恰好属于一个组。此外,在任何一个集团内,不得有两名雇员 A 和 B,满足 A 是 B 的上级。 必须组成的组的最小数目是多少?

题目描述

A company has $ n $ employees numbered from $ 1 $ to $ n $ . Each employee either has no immediate manager or exactly one immediate manager, who is another employee with a different number. An employee $ A $ is said to be the superior of another employee $ B $ if at least one of the following is true: - Employee $ A $ is the immediate manager of employee $ B $ - Employee $ B $ has an immediate manager employee $ C $ such that employee $ A $ is the superior of employee $ C $ . The company will not have a managerial cycle. That is, there will not exist an employee who is the superior of his/her own immediate manager. Today the company is going to arrange a party. This involves dividing all $ n $ employees into several groups: every employee must belong to exactly one group. Furthermore, within any single group, there must not be two employees $ A $ and $ B $ such that $ A $ is the superior of $ B $ . What is the minimum number of groups that must be formed?

输入输出格式

输入格式


The first line contains integer $ n $ ( $ 1<=n<=2000 $ ) — the number of employees. The next $ n $ lines contain the integers $ p_{i} $ ( $ 1<=p_{i}<=n $ or $ p_{i}= $ -1). Every $ p_{i} $ denotes the immediate manager for the $ i $ -th employee. If $ p_{i} $ is -1, that means that the $ i $ -th employee does not have an immediate manager. It is guaranteed, that no employee will be the immediate manager of him/herself ( $ p_{i}≠i $ ). Also, there will be no managerial cycles.

输出格式


Print a single integer denoting the minimum number of groups that will be formed in the party.

输入输出样例

输入样例 #1

5
-1
1
2
1
-1

输出样例 #1

3

说明

For the first example, three groups are sufficient, for example: - Employee 1 - Employees 2 and 4 - Employees 3 and 5

Input

题意翻译

一家公司有 $n(1\le n\le2\times10^3)$ 名员工,从 $1$ 人到 $n$ 人。每个员工要么没有直接经理,要么只有一个直接经理,后者是另一个具有不同编号的员工。如果以下情况中至少有一个是正确的,则称 A 雇员是 B 雇员的上级: 雇员 A 是雇员 B 的直接经理。 雇员 B 有一个直接经理雇员 C,雇员 A 是雇员 C 的上级。 公司没有管理周期。也就是说,不存在一个员工是他/她自己的直接经理的上级。 今天公司将安排一个聚会。这涉及到将所有 $n$ 个雇员分为几个组:每个雇员必须恰好属于一个组。此外,在任何一个集团内,不得有两名雇员 A 和 B,满足 A 是 B 的上级。 必须组成的组的最小数目是多少?

加入题单

上一题 下一题 算法标签: