#P1084. 【模板】树的直径与重心

    ID: 96 传统题 1000ms 256MiB 尝试: 0 已通过: 0难度: 普及+/提高− ← 上一题 下一题 → 随机一题 上传者: 标签 模板题 树的直径 树的重心 树形DP 深度优先搜索 DFS
显示设置

【模板】树的直径与重心

题目描述

给定一棵 nn 个结点的无根树,结点编号 1∼n1\sim n,每条边的长度都是 11。

请分别求出:

  1. 树的直径:树上最远两个结点之间的距离(用边数衡量)。
  2. 树的重心:删掉某个结点 xx 后,剩下的图会分成若干连通块,记最大的连通块大小为 f(x)f(x),f(x)f(x) 最小的那个 xx 就是重心。如果这样的结点有两个,输出编号较小的一个。

输入格式

第一行一个整数 nn。

接下来 n−1n-1 行,每行两个整数 u,vu,v,表示结点 uu 与 vv 之间有一条边。

输出格式

一行两个整数,依次为直径长度和重心编号。

输入输出样例 #1

输入 #1

5
1 2
2 3
3 4
4 5

输出 #1

4 3

说明

数据范围

  • 对于 100%100\% 的数据,1≤n≤5×1051\le n\le 5\times 10^5。