atcoder#ARC111D. [ARC111D] Orientation
[ARC111D] Orientation
配点 : 点
問題文
頂点 辺の単純な無向グラフが与えられます。頂点には の番号がついています。 番目の辺は頂点 , を繋いでいます。 また、正整数列 も与えられます。
このグラフを、次の条件を満たすように有向グラフに変換してください。つまり、各 について無向辺 を削除し、有向辺 、 のどちらか つを張ってください。
- 全ての について、頂点 から(有向辺を好きな回数使うことで)到達可能な頂点数がちょうど 個。なお、頂点 自身も 個と数える。
なお、この問題では、解が存在するような入力のみが与えられます。
制約
- 与えられるグラフに自己ループや多重辺は存在しない
- 必ず題意を満たす解が存在する
入力
入力は以下の形式で標準入力から与えられる。
出力
行出力せよ。
行目には、 番目の辺について に辺を張りたい場合 ->
、 に辺を張りたい場合 <-
を出力せよ。
解が複数存在する場合、どれを出力しても構わない。
3 3
1 2
2 3
3 1
3 3 3
->
->
->
長さ のサイクルでは、どの頂点からも全ての頂点に到達できます。
3 2
1 2
2 3
1 2 3
<-
<-
6 3
1 2
4 3
5 6
1 2 1 2 2 1
<-
->
->
グラフは非連結のこともあります。