Pagini recente » Cod sursa (job #1016302) | Cod sursa (job #1261372) | Cod sursa (job #2153161) | Cod sursa (job #1704536) | Cod sursa (job #1511870)
#include <cstdio>
#include <vector>
using namespace std;
const int nmx = 100002;
int n,nod_d,dmax = -1;
vector <int> g[nmx];
void input(){
scanf("%d", &n);
int nod1,nod2;
for(int i = 1; i < n; ++i){
scanf("%d %d", &nod1, &nod2);
g[nod1].push_back(nod2);
g[nod2].push_back(nod1);
}
}
void dfs(int tata, int nod, int dist){
if(dist > dmax){
dmax = dist;
nod_d = nod;
}
for(vector<int>::iterator it = g[nod].begin(); it != g[nod].end(); ++it)
if(*it != tata)
dfs(nod,*it,dist+1);
}
int main(){
freopen("darb.in", "r", stdin);
freopen("darb.out", "w", stdout);
input();
dfs(0,1,1);
dfs(0,11,1);
printf("%d", dmax);
return 0;
}