#abc218f. [abc218_f]Blocked Roads

[abc218_f]Blocked Roads

题目描述

给定一个有向图,有 NN 个顶点和 MM 条边。顶点编号为 11NN,边编号为 11MM。第 ii 条边连接顶点 sis_itit_i,长度为 11

对于每个 ii (1iM)(1 \leq i \leq M),找到从顶点 11 到顶点 NN 的最短距离,当除了边 ii 之外的所有边都可通过时,或者如果从顶点 11 无法到达顶点 NN,则输出 -1

约束条件

  • 2N4002 \leq N \leq 400
  • 1MN(N1)1 \leq M \leq N(N-1)
  • 1si,tiN1 \leq s_i,t_i \leq N
  • sitis_i \neq t_i
  • (si,ti)(sj,tj)(s_i,t_i) \neq (s_j,t_j) (ij)(i \neq j)
  • 输入中的所有值都是整数。

输入

从标准输入读入数据,数据格式如下:

NN MM s1s_1 t1t_1 s2s_2 t2t_2 \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