#ddcc2017finalc. [ddcc2017_final_c]グラフいじり

[ddcc2017_final_c]グラフいじり

问题描述

给定一个有 NN 个顶点和 MM 条边的有向图。每个顶点用 1,2,...,N1, 2, ..., N 进行标号,第 ii 条边是从顶点 aia_i 到顶点 bib_i 的长度为 cic_i 的边。此外,该图是强连通的,即对于所有的 i,j(1i,jN)i, j(1 ≤ i, j ≤ N),存在从顶点 ii 到顶点 jj 的路径。

你可以选择图中的一条边,自由改变它的长度。注意,你也可以将其长度恢复为原来的长度。

请判断是否能够使得无论选择哪个环路,长度都变为 00

当选择图中至少 22 条边(选择第 MM 条到第 d1,d2,...,dMd_1, d_2, ..., d_M 条边)时,如果满足以下条件,则称这些被选择的边为图中的环路:

  • 对于 i=1,2,...,M1i = 1, 2, ..., M-1,有 bdi=adi+1b_{d_i} = a_{d_{i+1}}
  • ad1=bdMa_{d_1} = b_{d_M}(已修正)
  • 如果 iji ≠ j,则 adiadja_{d_i} ≠ a_{d_j}(已修正)

环路的长度指的是选择的边长度之和。

约束条件

  • 输入为整数
  • 2N3002 ≦ N ≦ 300
  • 1MN2N1 ≦ M ≦ N^2 - N
  • 1ai,biN1 ≦ a_i, b_i ≦ N
  • ci109|c_i| ≦ 10^9
  • aibia_i ≠ b_i
  • 对于所有的 1i,jM1 ≦ i, j ≦ M,如果 iji ≠ jaiaja_i ≠ a_jbibjb_i ≠ b_j
  • 给定的图是强连通的,即对于所有的 1i,jN1 ≦ i, j ≦ N,存在从顶点 ii 到顶点 jj 的路径

输入

输入以以下格式从标准输入中给出。

NN MM a1a_1 b1b_1 c1c_1 a2a_2 b2b_2 c2c_2 : aMa_M bMb_M cMc_M

输出

如果可以使得无论选择哪个环路,长度都变为 00,则输出 Yes,否则输出 No


输入示例 1

3 3
1 2 1
2 3 2
3 1 3

输出示例 1

Yes

只需要将任意边的长度减去 1+2+3=61+2+3 = 6 即可。


输入示例 2

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

输出示例 2

No

输入示例 3

4 5
1 2 1
2 3 -2
3 1 2
2 4 -3
4 1 3

输出示例 3

Yes

只需要将第 11 条边的长度变为 00 即可。