时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
这一天,xmy去黑职找cr,xmy从哈东站下车后发现他的缺德地图开始缺德了。
因为缺德地图炸了,所以xmy翻出了plan B。
xmy拿出了一张地图。地图上有M段路。
每段路连接着两个路口。
并且标记出了两个路口的编号A和B,长度L(单位米)。还有一个标记W(标记是1为单向边 标记是2为双向边)。
xmy每秒可以走S米。
注:每个路口的编号是唯一的 编号相同的话 代表是同一个路口。
已知哈东站所在位置的编号为Xa,黑职所在的路口编号为Xb。
由于xmy太菜了,他想知道哈东站走路到黑职最快要多久,但是他不会算,就把数据发给了 hlj.king.cr。
cr看了一眼太简单了,把数据给了你,要你算好,然后发给xmy。
你只需要算好,最少需要多少秒可以从哈东站到达黑职就可以。如果出现小数向上取整。
如果不能从哈东站到达黑职,请输出-1。
输入描述:
第一行四个整数 M Xa Xb S
以下M行,每行为四个整数 A B L W
输出描述:
输出一个整数 需要多少秒(向上取整)
示例1
输入
复制
6 1 3 2
1 2 2 1
2 3 2 1
2 4 1 1
1 3 5 1
3 4 3 1
1 4 4 1
说明
起点在1 终点在3 1到3的最短路 1-2 2-3 4米