#NH4684. NH.2013.初中.06.重要人物

NH.2013.初中.06.重要人物

题目描述

某重要人物 PP 要寻访城市 CCGG 个地方,由于该人物非常重要,交警打算对人物 PP 行走的街道进行临时封道(不准普通市民进入,但如果在封道前进入的可以继续行走,也可以正常出去)。当人物 PP 进入这条街道之前和 PP 走出这条街道之后,普通市民都可以正常进入该街道。

比如,PP 在第 1010 分钟期间进入街道 XX ,并要 XX 街道上行走 55 分钟,则在第 10101111121213131414 分钟期间,普通市民不可以进入 XX 街道,市民可以在第 99 分钟之前(含第 99 分钟)进入,也可以在第 1515 分钟之后(含第 1515 分钟)进入。

人物 PP 寻访 KK 分钟后,有一市民 SS 打算从城市的 AA 处到达 BB 处,请编程计算 PPAABB 的最少用时。注意:市民 SS 在行走的过程中某条街道可以走,但为了用更短的时间,可以选择等待!

输入格式

M+3M+3 行。

1122 个整数 NNMM ( 2N10002 \le N \le 1000 , 2M100002 \le M \le 10000 ),分别表示城市中的结点(即某个地方,从 11NN 编号)的数量以及街道的数目。

22 行包含 44 个整数 AA, BB, KKGG ( 1A,BN1 \le A , B \le N , 0K10000 \le K \le 1000 , 0G10000 \le G \le 1000 ),分别表示:

市民 SS 的出发地

市民 SS 的目的地

市民 SS 是在人物 PP 寻访 KK 分钟后开始出发

人物 PP 寻访的结点(地方)数量

33GG 个整数,表示人物 PP 将要寻访的 GG 处地方的编号,每一对结点代表了人物 PP 寻访要经过的街道,每条街道仅走一次。

接下来 MM 行,每行 33 个整数 AA, BBLL ( 1A,BN1 \le A, B \le N , 0L10000 \le L \le 1000 ),表示 AABB 之间有一条需要走 LL 分钟的街道(假定人物 PP 和市民 SS 行走速度相同)。

数据范围

40% 的数据保证 2N5502 \le N \le 5502M40002 \le M \le 4000

100% 的数据保证 2N10002 \le N \le 10002M100002 \le M \le 10000

输出格式

一个整数,表示市民 SSAA 处到达 BB 处的最少用时(单位分钟)。

样例

6 5
1 6 20 4
5 3 2 4
1 2 2
2 3 8
2 4 3
3 6 10
3 5 15
20
8 9 
1 5 5 5
1 2 3 4 5
1 2 8
2 7 4
2 3 10
6 7 40
3 6 5
6 8 3
4 8 4
4 5 5
3 4 23
40