#aBC306G. [ABC306G] Return to 1

[ABC306G] Return to 1

AT_abc306_g [ABC306G] Return to 1

题目描述

有一个包含 NN 个顶点、MM 条边的有向图。顶点编号为 11NN,第 ii 条边从顶点 UiU_i 指向顶点 ViV_i

你现在位于顶点 11。请判断,是否有可能恰好经过 101010010^{10^{100}} 次如下操作后回到顶点 11

  • 从当前所在的顶点选择一条出边,移动到该边指向的顶点。

TT 组测试数据,请分别作答。

输入格式

输入以如下格式从标准输入给出。这里 testi\text{test}_i 表示第 ii 个测试用例。

TT
test1\text{test}_1
test2\text{test}_2
\vdots
testT\text{test}_T

每个测试用例的格式如下:

NN MM
U1U_1 V1V_1
U2U_2 V2V_2
\vdots
UMU_M VMV_M

输出格式

输出 TT 行。

ii 行输出第 ii 个测试用例的答案。如果可以恰好经过 101010010^{10^{100}} 次操作后回到顶点 11,输出 Yes,否则输出 No

输入输出样例 #1

输入 #1

4
2 2
1 2
2 1
3 3
1 2
2 3
3 1
7 10
1 6
6 3
1 4
5 1
7 1
4 5
2 1
4 7
2 7
4 3
7 11
1 6
6 3
1 4
5 1
7 1
4 5
2 1
4 7
2 7
4 3
3 7

输出 #1

Yes
No
No
Yes

说明/提示

限制条件

  • 所有输入均为整数。
  • 1T2×1051 \leq T \leq 2 \times 10^5
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 1M2×1051 \leq M \leq 2 \times 10^5
  • 所有测试用例中 NN 的总和不超过 2×1052 \times 10^5
  • 所有测试用例中 MM 的总和不超过 2×1052 \times 10^5
  • 1Ui,ViN1 \leq U_i, V_i \leq N
  • UiViU_i \neq V_i
  • iji \neq j,则 (Ui,Vi)(Uj,Vj)(U_i, V_i) \neq (U_j, V_j)

样例解释 1

对于第 11 个测试用例,

  • 只能不断地 1211 \rightarrow 2 \rightarrow 1 \rightarrow \dots 循环移动。此时,经过 101010010^{10^{100}} 次移动后会回到顶点 11,所以答案为 Yes

对于第 22 个测试用例,

  • 只能不断地 $1 \rightarrow 2 \rightarrow 3 \rightarrow 1 \rightarrow \dots$ 循环移动。此时,经过 101010010^{10^{100}} 次移动后会停在顶点 22,所以答案为 No

由 ChatGPT 4.1 翻译