#P8123. [BalticOI 2021 Day1] Inside information
[BalticOI 2021 Day1] Inside information
题目描述
有 个服务器,第 个服务器存储着第 块数据,现在有若干种操作:
S a b
第 个服务器与第 个服务器共享数据,即这两个服务器同时拥有这两个服务器本身拥有的数据块的和,并自动去重(可以理解为数据块之并)。Q a d
查询第 个服务器是否拥有第 块数据。C a
查询存储数据块 的服务器数量。
S 操作有 次,如果把共享看做连边,那么最后将形成以 个服务器为点的一棵树;Q 操作和 C 操作一共有 次。
求对于每个 Q 操作和 C 操作返回的结果。
输入格式
第一行两个整数 代表服务器个数和操作个数。
接下来 行每行代表一个操作。
输出格式
行:
- 对于 Q 操作,输出
yes
或no
代表是否拥有第 块数据; - 对于 C 操作,输出一个整数代表服务器数量。
6 9
S 1 2
S 1 3
S 3 4
Q 5 1
S 4 5
S 1 6
Q 5 1
Q 1 5
C 1
C 2
C 3
C 4
C 5
C 6
no
yes
no
6
6
5
3
2
2
4 4
S 1 2
S 1 3
S 3 4
Q 2 1
Q 2 2
Q 2 3
Q 2 4
yes
yes
no
no
提示
数据规模与约定
本题采用捆绑测试。
- Subtask 1(5 pts):。
- Subtask 2(5 pts):第 个服务器与第 个服务器共享数据。
- Subtask 3(10 pts):如果 ,那么第 个服务器和第 个服务器共享数据。
- Subtask 4(20 pts):如果 且 或 ,那么第 个服务器和第 个服务器共享数据。
- Subtask 5(25 pts):每个服务器最多与 个服务器共享数据。
- Subtask 6(35 pts):无特殊限制。
对于 的数据,。