2023华为OD机试 (B卷)|200分 城市聚集度(C++ Java JavaScript Python)
题目描述
一张地图上有N个城市,城市和城市之间有且只有一条道路相连,要么直接相连,要么通过其他城市中转相连(可中转一次或多次)。城市与城市之间的道路都不会成环。
当切断通往某城市i的所有道路后,地图上将分成多个连通的城市群,设该城市i的聚集度为DPi of Polymerization), DPi = max(城市群1的城市个数,城市群2的城市个数,...城市群m的城市个数)。 请找出地图上DP值最小的城市(即找到城市j,使得DPj = min(DP1,DP2...DPn))
提示:如果有多个城市都满足条件,这些城市都要找出来(可能存在多个解)
提示:DPi的计算,可以理解为已知一个树,删除某个节点后,生成的多个字树,求解多个字树节点数的问题。
输入描述
每个样例,第一行有一个整数N,表示有
N个节点,1 <=N <=1000
j接下来的N-1行每行有两个整数x,y,表示城市x与城市y连接。1 <= x , y <= N
输出描述
输出城市的编号,如果有多个,按照编号升序输出。
用例
| 输入 | 5 1 2 2 3 3 4 4 5 |
|---|---|
| 输出 | 3 |
说明
<

最低0.47元/天 解锁文章
1365

被折叠的 条评论
为什么被折叠?



