题目描述
村庄的地图由 N 个地点和 M 条双向道路组成。邮局位于地点 S,两封信分别需要送到地点 T1 和地点 T2。
邮递员从地点 S 出发,需要到达 T1 和 T2,送完信后不必返回邮局。求他需要经过的最短路程。
输入格式
第一行包含五个整数 M,N,S,T1,T2。
接下来 M 行,每行包含三个整数 Ui,Vi,Li,表示地点 Ui 与地点 Vi 之间有一条长度为 Li 的双向道路。
输出格式
输出一个整数,表示送完两封信需要经过的最短路程。
5 4 1 3 4
1 2 2
2 3 3
1 3 10
2 4 4
3 4 1
6
样例解释
可以依次经过地点 1,2,3,4,总路程为 2+3+1=6。
数据范围与提示
- 对于 30% 的数据,1≤M,N≤100
- 对于全部数据,1≤M≤2×105,1≤N≤105
- 1≤S,T1,T2,Ui,Vi≤N
- Li 为正整数,且所有道路长度之和不超过 2×109
- 保证两封信都可以送达