Pagini recente » Cod sursa (job #261475) | Cod sursa (job #2938736) | Cod sursa (job #1035782) | Cod sursa (job #2852049) | Cod sursa (job #1335108)
#include <iostream>
#include <fstream>
#include <vector>
#include <cstring>
using namespace std;
ifstream f("darb.in");
ofstream g("darb.out");
vector <int> v[100005];
int n,use[100005],dist[100005],mx=0,nod=1;
void DFS(int x,int d)
{ int i;
use[x]=1;
if (d>mx) {mx=d; nod=x;}
for(i=0;i<v[x].size();i++)
if (!use[v[x][i]]) DFS(v[x][i],d+1);
}
int main()
{ int i,x,y;
f>>n;
for(i=1;i<n;i++)
{ f>>x>>y;
v[x].push_back(y);
v[y].push_back(x);
}
DFS(1,0);
memset(use,0,sizeof(use));
DFS(nod,0);
g<<mx+1<<"\n";
return 0;
}