usingnamespacestd; constint N = 100010, M = N * 2; int h[N], ne[M], e[M], idx; int res = N; bool st[N]; int n;
intdfs(int x) { st[x] = true;
// 在新版的c++ 中size不能定义成全局变量,但是可以定义成局部变量 int sum = 0, size = 0; for(int i = h[x]; i != -1; i = ne[i]) { int j = e[i]; if (!st[j]) { int s = dfs(j); size = max(size, s); sum += s; } }
size = max(size, n - sum - 1); res = min(res, size); return sum + 1; }
voidadd(int a, int b) { e[idx] = b, ne[idx] = h[a], h[a] = idx++; }
intmain() { cin >> n; memset(h, -1, sizeof h); for(int i = 0; i < n; i++) { int a, b; cin >> a >> b; add(a, b), add(b, a); }