#P005865. 送信

    ID: 5865 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 4 上传者: 标签>24-10-C组月赛T2最短路基础图论普及+/提高

送信

题目描述

小A是村里唯一的邮递员,这些年由于现代通讯方式的发展,小A每天要送的信件越来越少,经常几天才要送一次信。

在一个阳光明媚的早上,小A来到邮局,发现今天只要送 22 封信。

小A所在的村子,可以看作一个由 NN 个点(点的编号为 1N1 \sim N),MM 无向边条边构成的地图。邮局在编号为 SS 的位置上,小A在地图上找到了自己今天要送信的两个点 T1T_1T2T_2

小A估计,如果他好好规划一下路线,他早上就能送完 22 封信了,于是他准备骑上自己的自行车,开始今天的送信工作。

请你编程帮助小A计算出,他送完这两封信,最少要骑车的公里数。

请注意:你只要计算出,小A送完这两封信,最少要骑车的公里数,不需要考虑小A回来的时间。

输入格式

11 行输入 M,N,S,T1,T2M, N, S, T_1, T_2,含义如题所述。

接下来的 MM 行,每行输入三个整数 Ui,Vi,LiU_i, V_i, L_i,表示点 UiU_i 和 点 ViV_i 之间存在一条长度为 LiL_i 的双向道路。

输出格式

输出一个整数,代表小A送完两封信,最少要骑车的公里数。

样例

输入

10 7 1 3 6
5 1 8
6 7 3
4 7 1
5 6 3
5 2 6
4 3 3
3 1 2
3 3 2
6 3 3
6 10

输出

13

数据范围

对于 30%30\% 的数据,满足 1M1001 \le M \le 1001N1001 \le N \le 100

对于 100%100\% 的数据,1M2×1051 \le M \le 2 \times 10^51N1051 \le N \le 10^51Ui,ViN1 \le U_i, V_i \le NLi2×109\sum L_i \le 2 \times 10^9