Pagini recente » Cod sursa (job #2974723) | Cod sursa (job #3127384) | Cod sursa (job #1631820) | Cod sursa (job #2888395) | Cod sursa (job #2560811)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
const int MAX_N = 100000;
int n, sol_nod, dmax;
bool vis[MAX_N + 5];
vector<int> G[MAX_N + 5];
void dfs(int nod, int dist) {
vis[nod] = 1;
for (int v : G[nod])
if (!vis[v])
dfs(v, dist + 1);
if (dist > dmax) {
dmax = dist;
sol_nod = nod;
}
}
int main() {
fin >> n;
for (int i = 1; i < n; i++) {
int a, b;
fin >> a >> b;
G[a].push_back(b);
G[b].push_back(a);
}
dfs(1, 0);
memset(vis, 0, n);
dfs(sol_nod, 0);
fout << dmax + 1;
return 0;
}