Pagini recente » Cod sursa (job #400574) | Cod sursa (job #2939381) | Cod sursa (job #2459476) | Cod sursa (job #2062921) | Cod sursa (job #2541093)
#include <bits/stdc++.h>
#define pb push_back
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
const int MAXN = 100010;
int dist[MAXN], n, ma;
vector<int> graph[MAXN];
void read()
{
fin >> n;
for (int i = 0; i < n - 1; ++i) {
int x, y;
fin >> x >> y;
graph[x].pb(y);
graph[y].pb(x);
}
}
void reset()
{
for (int i = 1; i <= n; ++i)
dist[i] = 0;
}
void dfs(int node, int fat)
{
dist[node] = dist[fat] + 1;
if (dist[ma] < dist[node])
ma = node;
for (const auto& it: graph[node])
if (!dist[it])
dfs(it, node);
}
int main()
{
read();
dfs(1, 1);
reset();
dfs(ma, ma);
fout << dist[ma] << '\n';
return 0;
}