100 atcoder#ARC061C. [ARC061E] すぬけ君の地下鉄旅行
[ARC061E] すぬけ君の地下鉄旅行
配点 : 点
問題文
すぬけ君の住んでいる街には地下鉄が走っています。駅は全部で 個あり、路線は全部で 本あります。 駅には から までの整数が付けられています。また、それぞれの路線はある つの会社によって運営されており、 それぞれの会社には会社をあらわす整数がつけられています。
番目 ( ) の路線は、駅 と 駅 を相互に結んでいます。途中に他の駅はありません。 また、この路線は会社 によって運営されています。 同じ駅を通る路線が複数あるときは、その駅で乗り換えることができます。
それぞれの会社について、同じ会社の路線を使い続ける限り料金は ですが、別の会社の路線に乗り換えるたびに新たに料金が かかります。 ある会社を利用し、別の会社を利用してからまた最初の会社を利用する場合でも、再び料金を払う必要があります。
すぬけ君は、駅 を出発し、地下鉄を利用して駅 に行きたいです。移動にかかる料金の最小値を求めてください。
制約
入力
入力は以下の形式で標準入力から与えられる。
:
出力
移動にかかる料金の最小値を出力せよ。すぬけ君が駅 に到達することが不可能な場合には、代わりに -1
を出力せよ。
3 3
1 2 1
2 3 1
3 1 2
1
→ → と会社 の路線を使って移動することができ、この場合必要なコストは です。
8 11
1 3 1
1 4 2
2 3 1
2 5 1
3 4 3
3 6 3
3 7 3
4 8 4
5 6 1
6 7 5
7 8 5
2
→ → → → と会社 の路線を利用し、その後 → → と会社 の路線を利用することで、コスト で目的地に到達できます。
2 0
-1