atcoder#ABC164E. [ABC164E] Two Currencies
[ABC164E] Two Currencies
题目描述
から までの番号がつけられた 個の都市があります。 これらの都市は 本の鉄道路線によって結ばれています。
あなたは現在、金貨を 枚、銀貨を 枚持った状態で都市 にいます。
番目の鉄道路線は、都市 と都市 を双方向に結んでおり、片道の運賃は 銀貨 枚、移動にかかる時間は 分です。 運賃を金貨で払うことはできません。
各都市には両替所があり、都市 の両替所では金貨 枚を銀貨 枚と交換することができます。 交換には、金貨 枚あたり 分かかります。
各交換所では、金貨を何枚でも交換することができます。
について、都市 から都市 への移動にかかる最小の時間を求めてください。電車を待つのにかかる時間は無視して構いません。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
について、都市 から都市 への移動にかかる最小の時間を順番に一行ずつ出力せよ。
题目大意
题目描述
有 个城市,它们由 条双向道路连接,保证它们能够彼此到达。第 条道路连接 ,需要花费 个银币,耗费 秒的时间。每个城市处都有兑换银币处,第 个城市中你可以用 个金币兑换 个银币,可以兑换无限次,不过兑换 次需要花费 秒的时间。你一开始在 号城市,有 个银币和无限多的金币,求到其它城市需要耗费的最小时间。
,,,,
输入格式
- 第一行
- 接下来 行
- 接下来 行
输出格式
一个整数表示答案。
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
提示
制約
- なる は存在しない
- 都市 から都市 にいくつかの鉄道路線を使って移動することができる。
- 入力はすべて整数である。
Sample Explanation 1
この入力中の鉄道網は以下のようなものです。 ここで、図中の都市のラベルは - 一段目に都市の番号 - 二段目に の形式に従っています。同様に、鉄道路線のラベルは - 一段目に鉄道路線の番号 - 二段目に の形式に従っています。 ![図](https://img.atcoder.jp/ghi/83f6a1d296d017f40372ea1e1d3b26e5.png) 以下のように行動することで、 都市 から都市 へ 分で移動できます。 - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) 以下のように行動することで、 都市 から都市 へ 分で移動できます。 - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分)
Sample Explanation 2
この入力中の鉄道網は以下のようなものです。 ![図](https://img.atcoder.jp/ghi/a081a72c42da7902a30f29f981c368d0.png) 以下のように行動することで、 都市 から都市 へ 分で移動できます。 - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分)
Sample Explanation 3
この入力中の鉄道網は以下のようなものです。 ![図](https://img.atcoder.jp/ghi/c61c66a7977129c9ef86c6770b37acba.png) 以下のように行動することで、 都市 から都市 へ 分で移動できます。 - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分)
Sample Explanation 4
この入力中の鉄道網は以下のようなものです。 ![図](https://img.atcoder.jp/ghi/bfbde2d55baea1e0487f80a62ef9b4ab.png)
Sample Explanation 5
この入力中の鉄道網は以下のようなものです。 ![図](https://img.atcoder.jp/ghi/16b8d5c94640ed5b38c0863716196890.png) 以下のように行動することで、 都市 から都市 へ 分で移動できます。 - 都市 の両替所で、金貨 枚を銀貨 枚と交換する。(所要時間: 分) - 番目の鉄道路線を使って、都市 から都市 へ移動する。(所要時間: 分)