1 条题解
-
0
题解
建成的道路形成一棵树,若把树随意定根,某条边 的两侧分别包含 与 个节点,其中 是以子节点为根的子树大小。题目给定的造价为
$$c \times |\#\text{左} - \#\text{右}| = c \times |(n-sz) - sz| = c \times |n - 2sz|. $$因此只需要一次 DFS/BFS 求出每条边的子树大小即可。伪代码如下:
- 用邻接表存储整棵树,任选一点为根;
- DFS 过程中回溯时累加子树节点数;
- 遍历到边 时,若 是 的子节点,则贡献为 ;
- 把所有贡献累加后输出即可。
时间复杂度 ,空间复杂度 。
- 1
信息
- ID
- 5877
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者