Pagini recente » Cod sursa (job #1622045) | Cod sursa (job #1081470) | Cod sursa (job #2621664) | Cod sursa (job #2384285) | Cod sursa (job #1882843)
#include <bits/stdc++.h>
using namespace std;
ifstream f("darb.in");
ofstream g("darb.out");
stack <int> s;
vector <int> lista[100001];
int n, m, adancimemax, nodf;
bool viz[100001];
void citire()
{
f>>n;int x,y;
for(int i=1;i<n;i++)
{
f>>x>>y;
lista[x].push_back(y);
lista[y].push_back(x);
}
}
void DF(int nod, int adancime)
{
if(adancime>adancimemax)
{
adancimemax=adancime;
nodf=nod;
}
viz[nod]=true;
for(int i = 0; i < lista[nod].size(); i++)
if(!viz[lista[nod][i]])
DF(lista[nod][i],adancime+1);
}
int main()
{
citire();
DF(1,1);
for(int i=1;i<=n;i++)
viz[i]=false;
DF(nodf,1);
g<<adancimemax;
return 0;
}