문제
IOI 町には 個の交差点があり, から までの番号が付いている.また, 本の道があり, から までの番号が付いている.それぞれの道は 個の異なる交差点を双方向に結んでいる.道 () は交差点 と交差点 を結んでいる. 本の異なる道が同じ交差点の組を結ぶことはない.これらの道には 以上 以下の整数で表される色が塗られており,道 の現在の色は である.複数の道が同じ色で塗られているかもしれない.
JOI 社は IOI 町の交差点を移動するロボットを開発した.あなたがこのロボットに道の色を指示すると,ロボットは指示された色の道を通り隣接した交差点に移動する.ただし,ロボットが現在いる交差点につながれた道のうちに,指示された色の道が 本以上存在すると,次に進むべき道を判別できずに停止してしまう.
あなたの目的は,現在交差点 にいるロボットに何回かの指示を出して,交差点 に移動させることである.ただし,現在の道の色ではそれができるとは限らないため,何本かの道の色を事前に塗り替えることで,ロボットを交差点 に移動させることができるようにしたい.道 () は 円をかけて, 以上 以下の好きな整数の色に塗り替えることが出来る.
交差点と道の情報が与えられたとき,必要な金額の最小値を求めるプログラムを作成せよ.ただし,どのように道の色を塗り替えてもロボットを交差点 に移動させることができない場合は,代わりに を出力せよ.
입력
入力は以下の形式で標準入力から与えられる.入力される値はすべて整数である.
$N$ $M$
$A_1$ $B_1$ $C_1$ $P_1$
$\ldots$
$A_M$ $B_M$ $C_M$ $P_M$
출력
標準出力に必要な金額の最小値を 行で出力せよ.ただし,どのように道の色を塗り替えてもロボットを交差点 に移動させることができない場合は,代わりに を出力せよ.
제한
- .
- .
- ().
- ().
- ().
- ().
서브태스크
- ( 점) ,.
- ( 점) ().
- ( 점) 追加の制約はない.
예제 설명 1
円で道 を色 から色 に塗り替え, 円で道 を色 から色 に塗り替える.合計 円かかる.
この結果,交差点 にいるロボットに色 を指示することで,ロボットを交差点 に移動させることができる.続けて,ロボットに色 を指示することで,ロボットを交差点 に移動させることができる.
円以下でロボットを交差点 に移動させることは不可能であるため, を出力する.
예제 설명 2
道をどのように塗り替えても,ロボットを交差点 に移動させることはできない.したがって, を出力する.
예제 설명 3
この入力例は小課題 の制約を満たす.
코드를 제출하려면 로그인이 필요합니다.
로그인