Pagini recente » Cod sursa (job #1829393) | Cod sursa (job #823492) | Cod sursa (job #3212352) | Cod sursa (job #2313070) | Cod sursa (job #1809806)
#include<fstream>
#include<cstring>
#include<vector>
using namespace std;
ifstream fin ("darb.in");
ofstream fout ("darb.out");
const int N = 100100;
int i, n, x, y, ma, best, t, viz[N];
vector<int> v[N];
void dfs(int x) {
viz[x] = 1;
t++;
if (t > ma) {
ma = t;
best = x;
}
for (int i = 0; i < v[x].size(); ++i) {
if (!viz[v[x][i]]) {
dfs(v[x][i]);
}
}
t--;
}
int main() {
fin >> n;
for (i = 1; i < n; ++i) {
fin >> x >> y;
v[x].push_back(y);
v[y].push_back(x);
}
dfs(1);
memset(viz, 0, sizeof(viz));
dfs(best);
fout << ma;
return 0;
}