Pagini recente » Istoria paginii runda/concurs_info/clasament | Rating Alexandru Buzescu (alexbuzescu) | Cod sursa (job #2308153) | Cod sursa (job #2806772) | Cod sursa (job #2862155)
#include <iostream>
#include <fstream>
#include <vector>
#include <list>
using namespace std;
int jart[100001]={};
int d[100001]={},maxi=0,hely=0;
int n;
vector< int > G[100001];
ifstream f("darb.in");
ofstream g("darb.out");
void beolvas()
{
f>>n;
int a,b;
while(f>>a>>b)
{
G[a].push_back(b);
G[b].push_back(a);
}
}
void depth_first(int x)
{
int hossz=G[x].size();
jart[x]=1;
for(int i=0;i<hossz;i++)
{
if(jart[G[x][i]]==0)
{
d[G[x][i]]=d[x]+1;
if(d[G[x][i]]>maxi)
{
maxi=d[G[x][i]]+1;
hely=G[x][i];
}
depth_first(G[x][i]);
}
}
}
int main()
{
beolvas();
depth_first(1);
for(int i=1;i<=n;i++)
{
jart[i]=0;
d[i]=0;
}
depth_first(hely);
g<<maxi;
return 0;
}