题意:一个城镇的道路是树形的,每条道路有对应的长度。因为下雪,每条道路都被雪覆盖了。现在有两个人从给定的点S出发,分别驾驶扫雪车去扫雪。问题是:在将所有的道路上积雪全部清理的情况下 ,最小化两人走过的路程。两个人没有必要回到起始点S。
思路:通过手算可以发现,扫雪的过程中,有一些路会走两遍,有一些路会走一遍。两遍是因为我们要回到原来的节点,向另外一个子节点继续进行扫雪。
所以,为了能够最小化走过的路程,我们要将长度长的路只走一遍。
因为两个人的起始点相同,他们只走一遍的路就连成了树上两点的路径。
树上两点最远的距离就是树的直径了。
所以,最终的答案是
2(