#P15441. [蓝桥杯 2025 国 Python/Java 研究生组] 耗时最短的路径
[蓝桥杯 2025 国 Python/Java 研究生组] 耗时最短的路径
说明
探险者需要穿越一个充满时空裂隙的迷宫,共包含有 个时空裂隙(简称结点),编号为 ,探险者可以在结点任意停留。在时空裂隙之间存在着 条路径,每条路径可以描述为 表示从结点 到结点 存在着一条双向路径,通过这条路径需要耗时 ,且只有当前时刻位于 的区间才可以进入这条路径并通过(因此经过这条路径到达 的时刻必然在 区间内)。
同时,探险者有调整时间流速的机会:即可以在某一次通过路径时忽略 的时间限制,这样的技能最多使用 次。
初始时,探险者在 号结点,初始时刻为 。请问从结点 到达结点 ,需要消耗的最短时间是多少?
输入格式
输入的第一行包含三个整数 ,相邻整数之间使用一个空格分隔。
接下来 行,每行包含五个整数 ,相邻整数之间使用一个空格分隔,表示第 条路径的信息。图中可能出现重边和自环。
输出格式
输出一行包含一个整数表示答案,如果不存在可能的路径,输出整数 。
3 3 0
1 2 1 0 3
2 3 3 5 10
1 3 6 0 7
6
3 3 1
1 2 1 0 3
2 3 3 5 10
1 3 6 0 7
4
提示
样例说明
对于样例 1:可以直接走 这条路径,耗时为 6;走 耗时为 8,因为到达 2 之后需要等到时间 5 才可以继续前进。
对于样例 2:由于有一次释放技能的机会,先走 ,然后使用一次技能从 ,总耗时为 4。
评测用例规模与约定
对于 的评测用例,;
对于 的评测用例,;
对于 的评测用例,;
对于 的评测用例,;
对于 的评测用例,;
对于所有评测用例,,$1 \le m \le \min\left(\dfrac{n(n-1)}{2}, 10^5\right)$,,,。
京公网安备 11011102002149号