C. 第3题-洞穴探险

第3题-洞穴探险

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目内容

勘探队要从入口走到出口。洞穴有 nn 个洞室,编号 1∼n1\sim n,以及 mm 条双向通道。每条通道连接两个洞室。沿一条长度为 ww 的通道走,路程增加 ww。同一条通道、同一个洞室都可以多次经过。

队伍带了一次应急协议:全程至多可以把一条通道的通行路程记为 00(走这条通道时不再累加它的长度)。也可以不用这次协议。协议不能凭空造出新通道,只能用在已经存在的通道上,且整段行程里最多用一次。

入口在洞室 ss,出口在洞室 tt。请给出最短总路程。无法到达时输出 −1-1。

输入描述

第一行四个整数 nn、mm、ss、tt。

接下来 mm 行,每行三个整数 uu、vv、ww,表示洞室 uu 与 vv 之间有一条长度为 ww 的双向通道。

约束

1≤n≤80001 \le n \le 8000

0≤m≤2×1040 \le m \le 2\times 10^4

1≤s,t,u,v≤n1 \le s,t,u,v \le n

1≤w≤1061 \le w \le 10^6

允许重边和自环

输出描述

输出一个整数:最短总路程;无法到达则输出 −1-1。

样例1

输入

4 4 1 4
1 2 5
2 4 5
1 3 100
3 4 1

输出

1

说明

不用协议时,走 1→2→41\to 2\to 4,路程 1010。若把 1→31\to 3 这条看起来很长的通道免费走掉,再走 3→43\to 4,路程 11。只在原来的最短路上挑一条免费,得不到这个答案。

样例2

输入

3 1 1 3
1 2 5

输出

-1

说明

洞室 33 与入口不连通,应急协议也不能造出新通道。

非AI方向-华为机考模拟赛-2026秋招第二场

Not Attended
Status
Done
Rule
IOI
Problem
3
Start at
2026-9-10 19:00
End at
2026-9-10 21:00
Duration
2 hour(s)
Host
Partic.
135