#P1849. Two
Two
问题描述
城市由交叉路口和连接它们的街道组成。
一场大雪覆盖了城市,市长米兰交给冬季服务部门一份需要清理积雪的街道清单。这些街道的选择遵循以下原则:街道数量尽可能少,但仍确保任意两个交叉路口保持连通(即任意两个交叉路口之间恰好存在一条路径)。冬季服务部门有两辆扫雪车,分别由司机米尔科和斯拉夫科驾驶,他们的起点位于某个交叉路口。
扫雪车每行驶米消耗升燃料(即使行驶经过已清理的街道),且必须按一定顺序清理清单上的所有街道,使得总燃料消耗最小。当所有街道清理完毕后,扫雪车停在最后访问的交叉路口。米尔科和斯拉夫科无需在同一个交叉路口结束作业。
请编写程序,计算扫雪车消耗的最小燃料总量。
输入
第一行包含两个整数: 和 (,)。 是交叉路口总数, 是扫雪车起点的交叉路口编号(交叉路口编号为 ~)。
接下来 行,每行包含三个整数 、、,表示交叉路口 和 直接通过一条长度为 米的街道相连()。
输出
输出清理所有街道所需的最小燃料总量。
输入数据示例 1
5 2
1 2 1
2 3 2
3 4 2
4 5 1
输出数据示例 1
6
来源
克罗地亚信息学奥林匹克2002年全国赛——第二天,高级组