#abc218f. [abc218_f]Blocked Roads

[abc218_f]Blocked Roads

問題文

NN 頂点 MM 辺の有向グラフが与えられます。頂点には 11 から NN の番号、辺には 11 から MM の番号がついています。辺 i,(1leqileqM)i\\,(1 \\leq i \\leq M) は頂点 sis_i から頂点 tit_i に向かう長さ 11 の辺です。

i,(1leqileqM)i\\,(1 \\leq i \\leq M) について、辺 ii のみ通れないときの頂点 11 から頂点 NN までの最短距離を求めてください。ただし、頂点 11 から頂点 NN にたどり着けない場合は -1 を出力してください。

制約

  • 2leqNleq4002 \\leq N \\leq 400
  • 1leqMleqN(N1)1 \\leq M \\leq N(N-1)
  • 1leqsi,tileqN1 \\leq s_i,t_i \\leq N
  • sineqtis_i \\neq t_i
  • (si,ti)neq(sj,tj)(s_i,t_i) \\neq (s_j,t_j) (ineqj)(i \\neq j)
  • 入力は全て整数である。

入力

入力は以下の形式で標準入力から与えられる。

NN MM s1s_1 t1t_1 s2s_2 t2t_2 vdots\\vdots sMs_M tMt_M

出力

MM 行出力せよ。

ii 行目には、辺 ii のみ通れないときの頂点 11 から頂点 NN までの最短距離を出力せよ。ただし、頂点 11 から頂点 NN にたどり着けない場合は -1 を出力せよ。


入力例 1

3 3
1 2
1 3
2 3

出力例 1

1
2
1

入力例 2

4 4
1 2
2 3
2 4
3 4

出力例 2

-1
2
3
2

11 のみ通れないとき、頂点 11 から頂点 NN にたどり着けないので -1 を出力します。


入力例 3

5 10
1 2
1 4
1 5
2 1
2 3
3 1
3 2
3 5
4 2
4 3

出力例 3

1
1
3
1
1
1
1
1
1
1

入力例 4

4 1
1 2

出力例 4

-1