Problem1705--真假朋友

1705: 真假朋友

[Creator : ]
Time Limit : 1 sec  Memory Limit : 128 MB

Description

一天,小L和队友们玩游戏,谁是我的真朋友,众所周知,ACM队员都擅长交朋友,你的朋友也是我的朋友,我的朋友自然也是你的朋友。话不多说,游戏是这样的:给定n个人(编号为1~n),开始时没有人承认谁是谁的好朋友,接下来给定m个提示,如下:

现在有m个提示,共有三种情况:

  1. “C a b”,同学a和同学b是真朋友,a和b可能相等;
  2. “Q1 a b”,询问同学a和同学b是否是真朋友,a和b可能相等;
  3. “Q2 a”,询问同学a所在朋友圈中真朋友的数量;

Input

第一行输入整数n和m。

接下来m行,每行包含一个操作指令,指令为“C a b”,“Q1 a b”或“Q2 a”中的一种。

1≤n,m≤10^5

Output

对于每个询问指令”Q1 a b”,如果a和b是真朋友,则输出“Yes”,否则输出“No”。

对于每个询问指令“Q2 a”,输出一个整数表示同学a所在朋友圈中真朋友的数量

每个结果占一行。

Sample Input Copy

5 5
C 1 2
Q1 1 2
Q2 1
C 2 5
Q2 5

Sample Output Copy

Yes
2
3

Source/Category