Pagini recente » Cod sursa (job #1829978) | Cod sursa (job #2984497) | Cod sursa (job #945834) | Cod sursa (job #1559481) | Cod sursa (job #2502327)
#include <bits/stdc++.h>
#define NMAX 100001
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
int n, a, b, maxim = -1, nmax;
vector<int> m[NMAX];
void DFS(int nod, int dist, int tata) {
if (dist > maxim) {
maxim = dist;
nmax = nod;
}
for (auto it = m[nod].begin(); it != m[nod].end();++it)
if (*it != tata)
DFS(*it, dist + 1,nod);
}
int main() {
int i;
fin >> n;
for (i = 1; i <= n - 1; i++) {
fin >> a >> b;
m[a].push_back(b);
m[b].push_back(a);
}
DFS(1, 1,0);
maxim = -1;
DFS(nmax, 1,0);
fout << maxim;
return 0;
}