Pagini recente » Istoria paginii runda/ice_cream_van/clasament | Cod sursa (job #1649776) | Cod sursa (job #1645562) | Istoria paginii runda/2006-oji | Cod sursa (job #2445178)
#include <fstream>
#include <vector>
#include <cstring>
#include <algorithm>
using namespace std;
ifstream f("darb.in");
ofstream g("darb.out");
int n, i, x, y, maxx, frunza;
vector <int> v[100001];
bool viz[100001];
void dfs(int k, int lg)
{
if(lg > maxx)
{
maxx = lg;
frunza = k;
}
viz[k] = 1;
for(int i = 0; i < v[k].size(); ++ i)
if(viz[v[k][i]] == 0) dfs(v[k][i], lg + 1);
}
int main()
{
f >> n;
for(i = 1; i < n; ++ i)
{
f >> x >> y;
v[x].push_back(y);
v[y].push_back(x);
}
dfs(1, 1);
memset(viz, 0, sizeof(viz));
dfs(frunza, 1);
g << maxx;
return 0;
}