有 n 个点、m 条有向边,每条边的通过时间均为 1。第 i 条边在时刻 ai 开放,只有出发通过该边的时刻不小于 ai 时才能使用。
旅行者只能在 0,k,2k,… 时刻到达点 1,也只能在这些时刻从点 n 离开。在游览途中,旅行者不能在任何点或边上等待,但可以重复经过点和边。
求最早的离开时刻;若无解,输出 −1。
输入格式
第一行包含三个整数 n,m,k。
接下来 m 行,每行包含三个整数 ui,vi,ai,表示一条从 ui 指向 vi 的有向边。
输出格式
输出最早的离开时刻;若无解,输出 −1。
样例 1
5 5 3
1 2 0
2 5 1
1 3 0
3 4 3
4 5 1
6
数据范围与原题特殊限制
对于所有测试数据有:2≤n≤104,1≤m≤2×104,1≤k≤100,1≤ui,vi≤n,0≤ai≤106。
| 测试点编号 |
n≤ |
m≤ |
k≤ |
特殊性质 |
| 1∼2 |
10 |
15 |
100 |
ai=0 |
| 3∼5 |
无 |
| 6∼7 |
104 |
2×104 |
1 |
ai=0 |
| 8∼10 |
无 |
| 11∼13 |
100 |
ai=0 |
| 14∼15 |
ui≤vi |
| 16∼20 |
无 |
来源与数据说明
原题页面。以上题意为重新整理的表述,规则、输入输出和约束与原题一致。本题使用独立生成的训练数据,原题测试点表仅说明原比赛范围与特殊性质,本包评分不复刻官方测试点分布。标准输入输出,不要求文件读写。