A9576.Acgo社区

普及-

通过率:0%

时间限制:3.00s

内存限制:512MB

题目描述

时间限制:3000ms
内存限制:512MB

Acgo\textbf{Acgo} 社区的每名用户可以关注或者取消关注其他用户。假设 Acgo\textbf{Acgo} 社区现在有从 11NNNN 名用户,自 Acgo\textbf{Acgo} 推出以来,已经进行了 QQ 次操作。 对于第 i(1iQ)i(1 \le i \le Q) 次操作由三个整数 CiC_iAiA_iBiB_i 表示,含义如下:

  • 如果 Ci=1C_i = 1:表示用户 AiA_i 关注了用户 BiB_i。 如果用户 AiA_i 已经关注了 BiB_i,则不做任何操作。
  • 如果 Ci=2C_i = 2:表示用户 AiA_i 取消关注了用户 BiB_i。 如果用户 AiA_i 没有关注用户 BiB_i,则不会做任何操作。
  • 如果 Ci=3C_i = 3:需要你判断用户 AiA_iBiB_i 此时是否互相关注。即如果用户 AiA_i 正在关注 BiB_i,并且用户 BiB_i 正在关注用户 AiA_i 输出 Yes\tt{Yes} 否则输出 No\tt{No}

一开始时没有任何用户关注任何其他用户。

输入格式

每个测试点包含多个测试用例。第一行为测试用例的总数 t(1t10)t(1 \le t \le 10)

每个测试用例的第一行为社区的总人数 N(1N109)N(1 \le N \le 10^9) 和总操作次数 Q(1Q2×105)Q(1 \le Q \le 2 \times 10^5)

每个测试用例的第 22 行到 Q+1Q + 1 行,每行包含三个整数 Ci(1,2,3)C_i(1, 2, 3)Ai(1AiN)A_i(1 \le A_i \le N)Bi(1BiN)B_i(1 \le B_i \le N),含义如题面所陈述。

题目保证所有测试用例的 QQ 的总和不超过 4×1054 \times 10^5

输出格式

对于每个测试用例的每个 Ci=3C_i = 3 的操作,若此时用户AiA_iBiB_i 互相关注,输出 Yes\tt{Yes} 否则输出 No\tt{No}

你可以输出 Yes\tt{Yes}No\tt{No} 的任意大小写形式(例如,字符串 yEs\tt{yEs}yes\tt{yes}Yes\tt{Yes}YES\tt{YES} 都会被视为正确答案)。

输入输出样例

  • 输入#1

    1
    3 9
    1 1 2
    3 1 2
    1 2 1
    3 1 2
    1 2 3
    1 3 2
    3 1 3
    2 1 2
    3 1 2

    输出#1

    No
    Yes
    No
    No

说明/提示

对于第一个测试用例,Acgo\bf{Acgo} 有三个用户,九个操作如下。

  • 用户 11 关注了用户 22。没有其他用户关注或被其他用户关注。
  • 判断用户 1122 是否互相关注。用户 11 关注了用户 22,但用户 22 没有关注用户 11,所以输出 No\tt{No}
  • 用户 22 关注用户 11
  • 判断用户 1122 是否互相关注。用户 11 关注了用户 22,用户 22 关注了用户 11,因此输出 Yes\tt{Yes}
  • 用户 22 关注用户 33
  • 用户 33 关注用户 22
  • 判断用户 1133 是否互相关注。用户 11 没有关注用户 33,用户 33 也没有关注用户 11,因此输出 No\tt{No}
  • 用户 11 取消关注用户 22
  • 判断用户 1122 是否互相关注。用户 22 关注了用户 11,但用户 11 没有关注用户 22,因此输出 No\tt{No}
首页