#GESP1415. [GESP202512 八级]猫和老鼠

[GESP202512 八级]猫和老鼠

题目描述

猫和⽼⿏所在的庄园可以视为⼀张由 nn 个点和 mm 条带权⽆向边构成的连通图。结点依次以 1,2,...,n1,2,...,n 编号,结点ii1in1 \leq i \leq n)有价值为 cic_i 的奶酪。在 mm 条带权⽆向边中,第 ii1im1 \leq i \leq m)条⽆向边连接结点 uiu_i 与结点 viv_i,边权 wiw_i表⽰猫和⽼⿏通过这条边所需的时间。

猫窝位于结点aa ,⽼⿏洞位于结点 bb。对于⽼⿏⽽⾔,结点 uu 是安全的当且仅当:

  • ⽼⿏能规划⼀条从结点 uu 出发逃往⽼⿏洞的路径,使得对于路径上任意结点 xx(包括结点 uu 与⽼⿏洞)都有: 猫从猫窝出发到结点 xx 的最短时间严格⼤于⽼⿏从结点 uu 沿这条路径前往结点 xx 所需的时间。

⽼⿏在拿取安全结点的奶酪时不存在被猫抓住的可能,但在拿取不是安全结点的奶酪时则不⼀定。为了确保万⽆⼀失,⽼⿏决定只拿取安全结点放置的奶酪。请你计算⽼⿏所能拿到的奶酪价值之和。

输入格式

第⼀⾏,两个正整数 n,mn,m,分别表⽰图的结点数与边数。

第⼆⾏,两个正整数 a,ba,b,分别表⽰猫窝的结点编号,以及⽼⿏洞的结点编号。

第三⾏,nn 个正整数c1,c2,...,cnc_1,c_2,...,c_n ,表示各个结点的奶酪价值。

接下来 mm ⾏中的第 ii ⾏(1im1 \leq i \leq m)包含三个正整数ui,vi,wiu_i,v_i,w_i ,表⽰图中连接结点 uiu_i 与结点 viv_i 的边,边权为wiw_i

输出格式

输出⼀⾏,⼀个整数,表⽰⽼⿏所能拿到的奶酪价值之和。

样例

5 5
1 2
1 2 4 8 16
1 2 4
2 3 3
3 4 1
2 5 2
3 1 8
22
6 10
3 4
1 1 1 1 1 1
1 2 6
2 3 3
3 1 4
3 4 5
4 5 8
5 6 2
6 4 1
3 2 4
5 4 4
3 3 6
3

数据范围

对于 40% 的测试点,保证1n5001\leq n \leq 500, 1m5001 \leq m \leq 500

对于所有测试点,保证 1n1051\leq n \leq 10^51m1051\leq m \leq 10^51a,bn1\leq a,b \leq naba\neq b1ui,vin1\leq u_i,v_i \leq n1wi1091\leq w_i \leq 10^9