Pagini recente » Cod sursa (job #1554622) | Cod sursa (job #2309260) | Cod sursa (job #1790303) | Cod sursa (job #2288428) | Cod sursa (job #2344562)
#include <bits/stdc++.h>
using namespace std;
ifstream in("darb.in");
ofstream out("darb.out");
int d[1001];
vector<int>L[1001];
int n,p;
int Citire()
{
in>>n;
int r,q;
for(int i=1;i<n;i++)
{
in>>q>>r;
L[q].push_back(r);
L[r].push_back(q);
}
in.close();
}
void Init()
{
for(int i=1;i<=n;i++)
d[i]=1e9;
}
void DFS(int k)
{
for(auto i:L[k])
if(d[i]>d[k]+1)
{
d[i]=d[k]+1;
DFS(i);
}
}
void DetDiamentru()
{
Init();
d[1]=1;
DFS(1);
p=1;
for(int i=2;i<=n;i++)
if(d[p]<d[i])p=i;
Init();
d[p]=1;
DFS(p);
p=1;
for(int i=2;i<=n;i++)
if(d[p]<d[i])p=i;
out<<d[p];
}
int main()
{
Citire();
DetDiamentru();
return 0;
}