Pagini recente » Cod sursa (job #130459) | Cod sursa (job #33807) | Cod sursa (job #2695668) | Cod sursa (job #460366) | Cod sursa (job #1094094)
#include <cstdio>
#include<vector>
#include<cstring>
#define NMax 100005
using namespace std;
vector <int> G[NMax];
int T,N,M,S,Sol,SolN,use[NMax];
void DFS(int nod,int tt,int level)
{
vector <int> :: iterator it;
if(level>Sol)
{
Sol=level;
SolN=nod;
}
use[nod]=1;
for(it=G[nod].begin();it!=G[nod].end();it++)
{
if (!use[*it])
DFS(*it,nod,level+1);
}
}
int main()
{
freopen("darb.in","r",stdin);
freopen("darb.out","w",stdout);
int i,X,Y;
scanf("%d",&N);
for(i=1;i<N;i++)
{
scanf("%d %d",&X,&Y);
G[X].push_back(Y);
G[Y].push_back(X);
}
Sol=0;
memset(use,0,sizeof(use));
DFS(1,0,0);
Sol=0;
memset(use,0,sizeof(use));
DFS(SolN,0,0);
printf("%d\n",Sol+1);
return 0;
}