时间限制:C/C++/Rust/Pascal 4秒,其他语言8秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld
题目描述
【说明】
update on 2025.4.9 经过再次验题,数据已更新
【题目描述】
为了简化问题,假设列车匀速运行,且列车到达站点后不停。
当前铁路网中共有

个可停靠的站点,

趟列车,对于第

躺列车,其描述如下:

,

表示发车时间,

表示运行速度,

表示经停站点数。以及

个整数

按经停顺序描述站点,

表示始发站,

表示终点站,保证存在

和

之间的边,保证
)
。
对于铁路网,有

条线路:
)
表示站点

之间存在一条长度为

的线路,线路有方向性,只能从

到

。 保证

之间最多存在一条线路。
请按时间顺序判断第

趟发车的列车是否会存在“追尾”,若某趟列车存在“追尾”,则该趟列车在“追尾”的瞬间消失,在后续的判断中即可忽略该趟列车。
追尾是指,在某时刻,对于两辆正行驶在同一条线路
)
上的列车

,

相遇时,若

视作

存在追尾,若

视作

存在追尾。
特别地,若存在多辆列车
同时从
出发行驶在线路
)
上,仅保留编号最大的列车,其它列车均视作存在追尾,在后续的判断中即可忽略这些列车。
若列车还未发车,则它会停在其对应始发站的特定位置,在其它列车运行过程中,不用考虑这些还未发车的列车。
具体请参照样例理解。
输出时,按输入顺序输出列车是否存在追尾。
输入描述:
第一行两个整数
。
接下来
行,每组两行,第一行三个整数
,第二行
个整数表示
。
第
行一个整数
表示路径数。
接下来
行,每行三个整数表示
。
输出描述:
输出共
行,第
行输出 `YES` 表示第
趟列车存在追尾,反之输出 `NO` 。
示例1
输入
复制
4 2
2 1 2
2 3
1 3 3
1 2 3
3
1 2 4
2 3 3
3 4 1