atcoder#ABC191E. [ABC191E] Come Back Quickly
[ABC191E] Come Back Quickly
配点 : 点
問題文
AtCoder 国には、町 から町 までの 個の町と、道路 から道路 までの 本の道路があります。 道路 は町 から町 への一方通行で、通るのに 分かかります。 かもしれませんし、同じ町の組を結ぶ道路が複数あるかもしれません。 高橋君はこの国で散歩をしようと考えました。ある町から出発し、 本以上の道路を通り、出発した町に帰ってくるような経路を正しい散歩経路と呼ぶことにします。 各町について、その町から出発する正しい散歩経路が存在するかを判定してください。また、存在するなら、そのような経路を通るのにかかる時間の最小値を求めてください。
制約
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
行に渡って出力せよ。 行目には以下を出力せよ。
- 町 から出発する正しい散歩経路が存在するなら、そのような経路を通るのにかかる時間の最小値
- 存在しないなら
-1
4 4
1 2 5
2 3 10
3 1 15
4 3 20
30
30
30
-1
道路 によって、町 は一周に 分かかる一つの輪のように繋がっています。 町 から町 に行くことはできますが、町 に帰ってくることはできません。
4 6
1 2 5
1 3 10
2 4 5
3 4 10
4 1 10
1 1 10
10
20
30
20
であるような道路が存在するかもしれません。 この場合、町 からは、道路 だけを使って 分で町 に帰ってくることができます。
4 7
1 2 10
2 3 30
1 4 15
3 4 25
3 4 20
4 3 20
4 3 30
-1
-1
40
40
同じ町の組を結ぶ道路が複数あるかもしれないことに注意してください。