题目描述
题目描述
一个社交平台有 名用户,编号为 到 。开始时,所有用户都没有关注任何人。
关注是有方向的:用户 关注用户 ,并不表示 也关注了 。只有双方都关注对方,才叫“互相关注”。
现在按先后顺序进行 次操作,每次给出三个整数 :
- 当 时,用户 关注用户 。如果已经关注,则状态不变。
- 当 时,用户 取消对用户 的关注。如果原本没有关注,则状态不变。取消关注只改变 对 的关系,不改变 对 的关系。
- 当 时,查询此刻用户 和用户 是否互相关注。
请依次回答所有查询。关注关系不会传递:即使 关注 、 关注 ,也不能据此认为 关注 。
输入格式
第一行输入两个整数 ,分别表示用户数量和操作次数。
接下来 行,每行输入三个整数 ,表示一次操作,含义如题目描述所示。必须按输入顺序处理这些操作。
输出格式
每遇到一次 的查询,就输出一行答案:
- 如果用户 关注了 ,并且用户 也关注了 ,输出
Yes。 - 否则输出
No。
大小写必须与上述单词一致。 和 的操作不需要输出。
输入样例 #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
样例解释 #1
第一次查询时只有 1 关注 2,因此输出 No。2 关注 1 后,第二次查询输出 Yes。1 和 3 没有互相关注,第三次查询输出 No。最后 1 取消对 2 的关注,即使 2 仍然关注 1,第四次查询也输出 No。
输入样例 #2
2 8
1 1 2
1 2 1
3 1 2
1 1 2
1 1 2
1 1 2
2 1 2
3 1 2
输出样例 #2
Yes
No
样例解释 #2
重复执行“1 关注 2”不会叠加关注次数。执行一次取消关注就会移除这条关系,所以两次查询依次得到 Yes、No。
输入样例 #3
3 7
2 1 2
3 1 2
1 1 2
1 2 3
3 1 3
1 3 1
3 1 3
输出样例 #3
No
No
No
样例解释 #3
取消一条不存在的关注关系不会产生变化。虽然之后 1 关注 2、2 关注 3,但 1 没有直接关注 3;最后只有 3 关注 1,双方仍未互相关注,因此三次查询都输出 No。
数据范围
,。
,,且 。
保证至少有一次 的查询。所有输入均为整数。
题目来源
洛谷 AT_abc278_c;AtCoder 原题。中文表述按原题规则整理。