#3030. Two Currencies

0

Two Currencies

Two Currencies

题目描述

有 NN 个城市,编号为 11 到 NN,由 MM 条铁路相连。 你现在在城市 11,口袋里有 1010010^{100} 个金币和 SS 个银币。 第 ii 条铁路双向连接城市 UiU_i 和城市 ViV_i,单程需要支付 AiA_i 个银币并耗时 BiB_i 分钟。 你不能使用金币支付车费。 每个城市都有兑换处。在城市 ii 的兑换处,你可以用 11 个金币兑换 CiC_i 个银币。 每兑换 1 个金币需花费 DiD_i 分钟的处理时间。 你可以在每个兑换处兑换任意数量的金币。 对于每个 t=2,...,Nt=2, ..., N,求从城市 11 到城市 tt 所需的最短时间。你可以忽略等车的时间。

输入格式

输入按下述格式由标准输入给出: NN MM SS U1U_1 V1V_1 A1A_1 B1B_1 : UMU_M VMV_M AMA_M BMB_M C1C_1 D1D_1 : CNC_N DND_N

输出格式

对于每个 t=2,...,Nt=2, ..., N,按此顺序输出一行,内容为从城市 11 到城市 tt 的最短时间。

3 2 1
1 2 1 2
1 3 2 4
1 11
1 2
2 5
2
14
4 4 1
1 2 1 5
1 3 4 4
2 4 2 2
3 4 1 1
3 1
3 1
5 2
6 4
5
5
7
6 5 1
1 2 1 1
1 3 2 1
2 4 5 1
3 5 11 1
1 6 50 1
1 10000
1 3000
1 700
1 100
1 1
100 1
1
9003
14606
16510
16576
4 6 1000000000
1 2 50 1
1 3 50 5
1 4 50 7
2 3 50 2
2 4 50 4
3 4 50 3
10 2
4 4
5 5
7 7
1
3
5
2 1 0
1 2 1 1
1 1000000000
1 1
1000000001

提示

2≤N≤502 \leq N \leq 50 N−1≤M≤100N-1 \leq M \leq 100 0≤S≤1090 \leq S \leq 10^9 1≤Ai≤501 \leq A_i \leq 50 1≤Bi,Ci,Di≤1091 \leq B_i,C_i,D_i \leq 10^9 1 \leq U_i < V_i \leq N 不存在满足 (Ui,Vi)=(Uj,Vj)(U_i,V_i)=(U_j,V_j) 的不同对 i,j(i≠j)i,j(i \neq j)。 对于每个城市 t=2,...,Nt=2,...,N,都存在一条由若干条铁路组成的路径可以从城市 11 到达该城市。 输入中的所有数值均为整数。下列输入对应的铁路网络如下面的图所示。 在该图中,每个城市标注如下:

第一行:城市的 ID 编号 ii(表示城市 ii) 第二行:CiC_i / DiD_i

同样,每条铁路标注如下:

第一行:铁路的 ID 编号 ii(表示输入中的第 ii 条铁路) 第二行:AiA_i / BiB_i

Figure 你可以在 $2$ 分钟内从城市 $1$ 到达城市 $2$,过程如下:

使用第 11 条铁路从城市 11 到城市 22,耗时 22 分钟。


你可以在 $14$ 分钟内从城市 $1$ 到达城市 $3$,过程如下:

使用第 11 条铁路从城市 11 到城市 22,耗时 22 分钟。 在城市 22 的兑换处用 33 个金币兑换 33 个银币,耗时 66 分钟。 使用第 11 条铁路从城市 22 回到城市 11,耗时 22 分钟。 使用第 22 条铁路从城市 11 到城市 33,耗时 44 分钟。
该输入对应的铁路网络如下面的图所示: Figure 你可以在 77 分钟内从城市 11 到达城市 44,过程如下:

在城市 11 的兑换处用 22 个金币兑换 66 个银币,耗时 22 分钟。 使用第 22 条铁路从城市 11 到城市 33,耗时 44 分钟。 使用第 44 条铁路从城市 33 到城市 44,耗时 11 分钟。
该输入对应的铁路网络如下面的图所示: Figure 你可以在 1657616576 分钟内从城市 11 到达城市 66,过程如下:

使用第 11 条铁路从城市 11 到城市 22,耗时 11 分钟。 在城市 22 的兑换处用 33 个金币兑换 33 个银币,耗时 90009000 分钟。 使用第 11 条铁路从城市 22 回到城市 11,耗时 11 分钟。 使用第 22 条铁路从城市 11 到城市 33,耗时 11 分钟。 在城市 33 的兑换处用 88 个金币兑换 88 个银币,耗时 56005600 分钟。 使用第 22 条铁路从城市 33 回到城市 11,耗时 11 分钟。 使用第 11 条铁路从城市 11 到城市 22,耗时 11 分钟。 使用第 33 条铁路从城市 22 到城市 44,耗时 11 分钟。 在城市 44 的兑换处用 1919 个金币兑换 1919 个银币,耗时 19001900 分钟。 使用第 33 条铁路从城市 44 回到城市 22,耗时 11 分钟。 使用第 11 条铁路从城市 22 回到城市 11,耗时 11 分钟。 使用第 22 条铁路从城市 11 到城市 33,耗时 11 分钟。 使用第 44 条铁路从城市 33 到城市 55,耗时 11 分钟。 在城市 55 的兑换处用 6363 个金币兑换 6363 个银币,耗时 6363 分钟。 使用第 44 条铁路从城市 55 回到城市 33,耗时 11 分钟。 使用第 22 条铁路从城市 33 回到城市 11,耗时 11 分钟。 使用第 55 条铁路从城市 11 到城市 66,耗时 11 分钟。
该输入对应的铁路网络如下面的图所示: Figure
该输入对应的铁路网络如下面的图所示: Figure 你可以在 10000000011000000001 分钟内从城市 11 到达城市 22,过程如下:

在城市 11 的兑换处用 11 个金币兑换 11 个银币,耗时 10000000001000000000 分钟。 使用第 11 条铁路从城市 11 到城市 22,耗时 11 分钟。

标签: AtCoder|abc164E

来源

AtCoder|abc164E