Pagini recente » Cod sursa (job #1279673) | Cod sursa (job #996579) | Cod sursa (job #2079074) | Cod sursa (job #2222564) | Cod sursa (job #1790733)
#include <bits/stdc++.h>
using namespace std;
vector<vector<int>> G;
int dist[666013];
int best, N;
void DFS(int k) {
if(dist[k] > dist[best])
best = k;
for(auto it : G[k])
if(!dist[it]) {
dist[it] = dist[k] + 1;
DFS(it);
}
}
int main()
{
freopen("darb.in","r",stdin);
freopen("darb.out","w",stdout);
cin.sync_with_stdio(false);
cin >> N;
G.resize(N+1);
for(int i = 1; i < N; ++i){
int a,b;
cin >> a >> b;
G[a].push_back(b);
G[b].push_back(a);
}
best = 1;
dist[best] = 1;
DFS(best);
memset(dist, 0,sizeof(dist));
dist[best] = 1;
DFS(best);
cout << dist[best];
return 0;
}