Pagini recente » Cod sursa (job #2670988) | Cod sursa (job #325214) | Cod sursa (job #2512240) | Cod sursa (job #2934437) | Cod sursa (job #3134959)
#include <fstream>
#include <vector>
using namespace std;
ifstream f("darb.in");
ofstream g("darb.out");
const int NMAX=100001;
int n,lung,jos;
bool viz[NMAX];
vector <int> G[NMAX];
void citire()
{
f>>n;
for(int i=1;i<n;i++)
{
int x,y;
f>>x>>y;
G[x].push_back(y);
G[y].push_back(x);
}
}
void DFS(int x,int nivel)
{
viz[x]=1;
if (nivel>lung)
{
lung=nivel;
jos=x;
}
for(const auto &i:G[x])
if (viz[i]==0)
DFS(i,nivel+1);
}
int main()
{
citire();
DFS(1,1);
for (int i=1;i<=n;i++)
viz[i]=0;
DFS(jos,1);
g<<lung;
return 0;
}