小X非常高兴的来到了 北京交通大学 ,但TA发现TA需要进行 步道乐跑 。
这实在太让TA头疼了,TA决定在上课结束后回宿舍的路上打开APP。但是,最令TA伤心的事,想要完成乐跑指标,TA必须要在“跑步”的过程中到两个指定的打卡点打卡(不要求打卡顺序)。
而且TA的运动距离不得小于1800m。
但懒狗不想跑步!!!请你帮TA算出最短的运动路程。
具体来讲,我们可以把校园地图抽象为一个全是无向边的地图,小X当前在点S(教学楼),必须要经过点A和点B打卡,最终到达宿舍所在的点E。
第一行输入四个整数 $S$、$A$、$B$、$E$,分别表示教学楼、两个打卡点、宿舍所处的节点编号。
第二行输入两个整数 $n$、$m$,分别表示校园地图的节点数量和边的数量。 $3 < n < 2000,3 < m < 5000$ 。
接下来 $m$ 行,每行输入两个整数 $u$、$v$ 和一个整数 $w$,表示节点 $u$ 和节点 $v$ 之间有一条长度为 $w$ 米的道路。 $0 < w < 1000$ 。
输出一个整数,表示小X从教学楼回到宿舍,并成功打卡乐跑的最短移动距离。
如果最短距离小于1800m,请输出1800,因为小X会摇动手机卡bug刷里程。
1 3 4 6 6 7 1 2 800 2 3 600 3 5 350 5 6 500 2 4 400 4 5 300 3 4 100
· · · \n · \n · · \n · · \n · · \n · · \n · · \n · · \n · · \n
2150
\n