#P2511. 2511 - 道路和航路

2511 - 道路和航路

题目描述

农夫约翰正在针对一个新区域的牛奶配送合同进行研究。他打算分发牛奶到 TT 个城镇(标号为 1T1 \dots T ),这些城镇通过 RR 条标号为( 1R1 \dots R )的道路和 PP 条标号为( 1P1 \dots P )的航路相连。

每一条公路 ii 或者航路 ii 表示成连接城镇 AiA_i1AiT1 \le A_i \le T )和 BiB_i1BiT1 \le B_i \le T )代价为 CiC_i 。每一条公路, CiC_i 的范围为 0Ci10,0000 \le C_i \le 10,000 ;由于奇怪的运营策略,每一条航路的 CiC_i 可能为负的,也就是 10,000Ci10,000-10,000 \le C_i \le 10,000

每一条公路都是双向的,正向和反向的花费是一样的,都是非负的。

每一条航路都根据输入的 AiA_iBiB_i 进行从 AiA_i -> BiB_i单向通行。实际上,如果现在有一条航路是从 AiA_iBiB_i 的话,那么意味着肯定没有任何通行方案BiB_i 回到 AiA_i

农夫约翰想把他那优良的牛奶从配送中心送到各个城镇,当然希望代价越小越好,你可以帮助他嘛?配送中心位于城镇 SS 中( 1ST1 \le S \le T )。

输入

输入的第一行包含四个用空格隔开的整数 T,R,P,ST,R,P,S

接下来 RR 行,描述公路信息,每行包含三个整数,分别表示 AiA_iBiB_iCiC_i

接下来 PP 行,描述航路信息,每行包含三个整数,分别表示 AiA_iBiB_iCiC_i

输出

输出 TT 行,分别表示从城镇 SS 到每个城市的最小花费,如果到不了的话输出 NO PATH

样例

6 3 3 4
1 2 5
3 4 5
5 6 10
3 5 -100
4 6 -100
1 3 -10
NO PATH
NO PATH
5
0
-95
-100

说明

【数据规模】

对于 20%20\% 的数据, T100T \le 100R500R \le 500P500P \le 500

对于 30%30\% 的数据, R1000R \le 1000R10000R \le 10000P3000P \le 3000

对于 100%100\% 的数据, 1T250001 \le T \le 250001R500001 \le R \le 500001P500001 \le P \le 50000