Pagini recente » Cod sursa (job #2905564) | Cod sursa (job #483939) | Cod sursa (job #3194019) | Cod sursa (job #2665983) | Cod sursa (job #1107087)
#include<stdio.h>
#include<algorithm>
#include<vector>
#include<iostream>
#define pb push_back
using namespace std;
vector<int> g[101010];
int c[101010];
int maxim=-1,x,y,N,start;
int ret=0;
void df(int x,int cost){
c[x]=cost;
for(int i=0;i<g[x].size();++i){
if(c[g[x][i]] == 0){
df(g[x][i],cost+1);
}
}
}
int main(){
freopen("darb.in","r",stdin);
freopen("darb.out","w",stdout);
cin>>N;
for(int i=1;i<N;++i){
cin>>x>>y;
g[x].pb(y);
g[y].pb(x);
}
df(1,1);
for(int i=1;i<=N;++i){
if(c[i] > maxim){
maxim=c[i];
start = i;
}
c[i]=0;
}
df(start,1);
for(int i=1;i<=N;++i){
if(c[i] > ret){
ret=c[i];
}
c[i]=0;
}
cout<<ret;
return 0;
}