Pagini recente » Cod sursa (job #405883) | Cod sursa (job #1608620) | Cod sursa (job #3213226) | Cod sursa (job #564247) | Cod sursa (job #2145148)
#include <bits/stdc++.h>
#define Nmax 100005
using namespace std;
ifstream f ("darb.in");
ofstream g ("darb.out");
int seen[Nmax],Max,x,n,i,y;
vector < int > v[Nmax];
void dfs(int nod,int bloc)
{
if(Max < bloc)
Max = bloc , x = nod;
int l = v[nod].size(),next_nod;
for(int i = 0;i < l;i++)
{
next_nod = v[nod][i];
if(not seen[next_nod])
seen[next_nod] = 1, dfs(next_nod, bloc + 1);
}
}
int main()
{
f >> n;
for(i = 1;i <= n- 1;i++)
{
f >> x >> y;
v[x].push_back(y);
v[y].push_back(x);
}
seen[1] = 1;
dfs(1 , 1);
memset(seen, 0 , sizeof(seen));
seen[x] = 1;
Max = 0;
dfs(x,1);
g << Max;
return 0;
}