Pagini recente » Cod sursa (job #446192) | Cod sursa (job #409464) | Cod sursa (job #2104671) | Cod sursa (job #115671) | Cod sursa (job #2210778)
#include <bits/stdc++.h>
using namespace std;
ifstream f( "darb.in");
ofstream g( "darb.out");
const int N= 100000;
vector< int > v[N];
bool viz[N];
int ans,n;
void citire()
{
f>>n;
for ( int i = 1; i < n; ++i )
{
int x, y;
f>>x>>y;
v[x].push_back( y );
v[y].push_back( x );
}
}
void dfs( int nod, int dist ) {
if ( dist > ans )
ans = dist;
viz[nod] = true;
for ( vector< int >::iterator it = v[nod].begin(); it != v[nod].end(); ++it )
if ( !viz[*it] )
dfs( *it, dist + 1 );
viz[nod] = false;
}
int main()
{
citire();
for ( int i = 0; i < n; ++i )
dfs( i, 0 );
g<<ans;
return 0;
}