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
hetp111: 2019-11-12 09:40:11

easier then it looks... calc height of each node. then for every node find 2 child with largest height.

ishancosmos25: 2019-10-13 02:08:53

https://discuss.codechef.com/t/longest-path-in-a-tree-using-dfs-and-double-bfs/8893 for reference..

scolar_fuad: 2019-09-04 06:04:59

Simple dfs problem ...
easy one for beginner...

Happy coding

jame___boy: 2019-08-30 00:30:33

many many thanx @anand_undavia for sharing the link.......
https://www.youtube.com/watch?v=w9vjFB7m0PM
...... really helpful :-D

Last edit: 2019-08-30 00:32:01
hetp111: 2019-08-24 05:04:07

2 dfs:
Start from any node and find the farthest node (say x), now again do a dfs from x and find the farthest node (say y), the answer is distance between x and y.

Last edit: 2019-08-24 05:04:21
sonianand966: 2019-08-21 15:08:26

Did it using 2-bfs method however was a difficult one as an all new question!

manas_uchiha10: 2019-08-19 15:58:37

AC in one go!!

elzahaby: 2019-08-14 22:05:54

using 2 BFS can't do it with DFS acctually idk why xD

nayeem_joy: 2019-08-10 12:50:50

2 bfs or dfs should be used

rockstar_786: 2019-07-05 22:15:49

@sarthak_1998 bro i was getting the same its due to small memory allocation of declared array.
You are doing a mistake like this : ---->
int arr[2000][2000];
int a = arr[2001] [2000];

You can read one of the answers here.
https://www.quora.com/Why-am-I-getting-a-runtime-error-SIGSEGV-when-I-submit-my-solution-on-CodeChef-or-Sphere-Online-Judge-SPOJ-while-its-working-fine-and-even-giving-the-correct-output-on-my-system


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