The Max Depth Of A Tree

Time Limit: 1000ms
Memory Limit: 32768KB
64-bit integer IO format: %lld      Java class name: Main

Description

In computer science, a tree is a widely used data structure that simulates a hierarchical tree structure with a set of linked nodes. The depth of a node is the number of nodes in the path to its root,excluding the root node and itself.Now given a tree,you should find the node with the max depth,and output this node's depth.

Input

The first line of the input contains an integer n(n<=10000) which means the number of non-root nodes.We give numbers to the nodes from 0 to n.0 means the root and 1~n means the non-root nodes.Then n lines follow, line i consists of an integer Ai,which means node Ai is the parent node of node i.We ensure that it's a tree.

Output

You should output one lines with the max depth value.

Sample Input

5
3
3
0
2
0

Sample Output

2

Author

Admin
Language: 
Theme: 
Share Code? 

Powered by NB231 | Current Style: .