Pagini recente » Cod sursa (job #997241) | Cod sursa (job #1558108) | Cod sursa (job #983723) | Cod sursa (job #223229) | Cod sursa (job #1989335)
#include <fstream>
#include <vector>
#include <queue>
#define DIM 100001
using namespace std;
ifstream fi("darb.in");
ofstream fo("darb.out");
int n;
int a,b;
vector<int> V[DIM];
int VIZ[DIM];
queue<int> Q;
int s,rez;
int main()
{
fi>>n;
for(int i=1;i<=n-1;i++)
{
fi>>a>>b;
V[a].push_back(b);
V[b].push_back(a);
}
Q.push(1);
VIZ[1]=1;
while(!Q.empty())
{
int v=Q.front();
for(int i=0;i<V[v].size();i++)
if(!VIZ[V[v][i]])
{
s=V[v][i];
Q.push(V[v][i]);
VIZ[V[v][i]]=1+VIZ[v];
}
Q.pop();
}
for(int i=1;i<=n;i++)
VIZ[i]=0;
VIZ[s]=1;
Q.push(s);
while(!Q.empty())
{
int v=Q.front();
for(int i=0;i<V[v].size();i++)
if(!VIZ[V[v][i]])
{
Q.push(V[v][i]);
VIZ[V[v][i]]=1+VIZ[v];
rez=VIZ[V[v][i]];
}
Q.pop();
}
fo<<rez;
fi.close();
fo.close();
return 0;
}