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
Omar: 2017-10-13 20:47:00

Run BFS on any node s in the graph, remembering the node u discovered last. Run BFS from u remembering the node v discovered last. d(u,v) is the diameter of the tree.
Just make sure to choose the right random node to avoid wrong answer.

mahilewets: 2017-09-12 11:54:10

It is very hard to not to AC first submission.

rvatna: 2017-09-11 15:57:23

#1. Test example on Spoj Toolkit is wrong, it's not even a tree since there is a cycle. Test on your own,
15
1 2
2 3
1 11
3 11
4 11
4 5
5 6
5 7
6 7
4 12
8 12
9 12
8 10
9 10
8 9

Last edit: 2017-09-11 15:57:56
kholan: 2017-08-25 23:24:24

@sharma96 4 is hardly a valid node index in a tree with only three nodes so your example is invalid input which should not ever happen on spoj

hk_visact: 2017-08-23 13:02:50

AC in one go, applied 2 bfs, took a while to type the code in java though

vishesh197: 2017-08-19 17:19:19

use bfs then dfs (dynammic programming)

sharma96: 2017-08-15 22:05:04

Can anyone please tell how to handle this test case:
3
1 2
1 3
2 4

The question specifies N-1 lines will be input,but in this test case there are N lines.

Last edit: 2017-08-15 22:07:57
Shantanu Banerjee: 2017-08-08 08:44:15

Simple Double DFS!

sunidhi: 2017-08-04 06:17:12

@anuraag19 spoj won't allow us to see your solution.use some other platform to share your code.

anuraag19: 2017-08-02 18:51:15

does anybody know why i am getting runtime error?
http://www.spoj.com/status/PT07Z,anuraag19/

Last edit: 2017-08-02 18:52:12

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