PT07Z - Longest path in a tree


You are given an unweighted, undirected tree. Write a program to output the length of the longest path (from one node to another) in that tree. The length of a path in this case is number of edges we traverse from source to destination.

Input

The first line of the input file contains one integer N --- number of nodes in the tree (0 < N <= 10000). Next N-1 lines contain N-1 edges of that tree --- Each line contains a pair (u, v) means there is an edge between node u and node v (1 <= u, v <= N).

Output

Print the length of the longest path on one line.

Example

Input:
3
1 2
2 3

Output:
2

hide comments
klmo: 2019-04-25 15:38:38

1 DFS. finally ac in java.

klmo: 2019-04-25 13:45:49

2 dfs operation with tree in adjacency matrix is giving TLE in java. Using BufferedReader. Any suggestion?

brijraj: 2019-02-17 11:54:05

@suvro_coder your input is wrong. There are 7 nodes instead of 6. Otherwise it will not add edge from 6 to 7

little_finger: 2019-01-16 20:56:14

AC in one go
Nice question --> recursion , must for beginners

bradyawn: 2018-12-11 21:49:28

The solution from @ktcoder is the easiest and easier to generalize to harder problems.

alishahali1382: 2018-11-29 12:00:59

don't say the solution here!
:(

jagadishsagi: 2018-09-21 20:07:56

Very simple solved using bfs twice 0.01s

saketag007: 2018-09-02 22:10:56

AC in one go , very simple apply 2 BFS.

jyotiradityafc: 2018-08-15 18:07:56

@suvro_coder it is because n = 6, hence edges should be 5 but you provided 6 edges. Put n = 7 and you will get your answer.

soumi_1987: 2018-08-04 10:37:08

For Java use BufferedReader for I/O rather than Scanner.


Added by:Thanh-Vy Hua
Date:2007-03-28
Time limit:0.5s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:Co-author Amber