#C2026XSR3J. 备用链路(link)

备用链路(link)

文件输入输出提示

本题采用文件输入输出。提交代码时,请在 main 函数开头加入文件重定向,并从 link.in 读入、输出到 link.out

freopen("link.in", "r", stdin);
freopen("link.out", "w", stdout);

题目描述

苗苗正在维护学校的数据中心。数据中心有 nn 个站点和 mm 条双向链路。第 ii 条链路连接站点 uiu_iviv_i,它有两个属性:

  • 稳定值 qiq_i
  • 传输耗时 wiw_i

sstt 的一条传输路线可以经过若干条链路。

  • 路线的总耗时:经过链路的耗时之和。
  • 路线的稳定值:经过链路的稳定值中的最小值。

现在希望从站点 ss 向站点 tt 传输一份数据,要求总耗时不超过 LL。请你在所有满足耗时限制的路线中,求出路线稳定值的最大可能值。

如果不存在总耗时不超过 LL 的路线,请输出 1-1

输入格式

从文件 link.in 中读入数据。

第一行输入五个整数 n,m,s,t,Ln,m,s,t,L

接下来 mm 行,每行输入四个整数 ui,vi,qi,wiu_i,v_i,q_i,w_i,表示一条双向链路。

输出格式

输出到文件 link.out 中。

输出一行一个整数,表示答案。

输入输出样例 #1

输入 #1

5 6 1 5 8
1 2 5 3
2 5 5 4
1 3 7 4
3 5 4 3
2 3 6 1
4 5 10 1

输出 #1

5

说明/提示

选择路线 1251\to 2\to 5,总耗时为 3+4=73+4=7,不超过 88;路线稳定值为 min(5,5)=5\min(5,5)=5

不存在总耗时不超过 88 且路线稳定值大于 55 的方案,因此答案为 55

输入输出样例 #2

输入 #2

3 1 1 3 100
1 2 10 1

输出 #2

-1

数据范围与子任务

对于所有数据,满足:

  • 1n2×1051\le n\le 2\times 10^5
  • 0m2×1050\le m\le 2\times 10^5
  • 1s,tn1\le s,t\le n
  • sts\ne t
  • 1qi1091\le q_i\le 10^9
  • 1wi1091\le w_i\le 10^9
  • 0L10180\le L\le 10^{18}
测试点编号 nn\le mm\le 特殊性质
131\sim 3 1212 2020
464\sim 6 20002000
797\sim 9 2×1052\times 10^5 所有 wi=1w_i=1
101210\sim 12 所有 qi1000q_i\le 1000
132013\sim 20

link_大样例.zip