#AT2504. D - Tying Rope
D - Tying Rope
当前没有测试数据。
D - 捆绑绳子
分数:400分
问题描述
有N根编号为1到N的绳子。每根绳子的一端被涂成红色,另一端被涂成蓝色。
你要执行M次绑绳子的操作。第i次操作,你将端点为A_i的红色绳子与端点为C_i的蓝色绳子绑在一起,其中R表示红色,B表示蓝色。对于每根绳子,不会多次绑定相同颜色的端点。
找出在所有操作完成后,形成循环的连续绳子的组数以及不形成循环的组数。
这里,一组连续绳子 $\lbrace v_0, v_1, \ldots, v_{x-1} \rbrace$ 被称为一个循环,如果可以重新排列v的元素,使得对于每个 $0 \leq i < x$,绳子$v_i$绑在绳子$v_{(i+1) \bmod x}$上。
约束
- $1 \leq N \leq 2 \times 10^5$
- $0 \leq M \leq 2 \times 10^5$
- $1 \leq A_i, C_i \leq N$
- $(A_i, B_i) \neq (A_j, B_j), (C_i, D_i) \neq (C_j, D_j)$ $(i \neq j)$
- $(A_i, B_i) \neq (C_j, D_j)$
- $N, M, A_i$, and $C_i$是整数。
- $B_i$ 是
R
或B
,$D_i$ 也是如此。
输入
从标准输入中按如下格式输入:
输出
按顺序以一个空格分隔,输出 $X$ 和 $Y$,其中 $X$ 是形成循环的连续绳子的组数,$Y$ 是不形成循环的组数。
5 3
3 R 5 B
5 R 3 B
4 R 2 B
1 2
有三组连续绳子:$\lbrace 1 \rbrace$,$\lbrace 2,4 \rbrace$ 和 $\lbrace 3,5 \rbrace$。
绳子组 $\lbrace 3,5 \rbrace$ 形成一个循环,而绳子组 $\lbrace 1 \rbrace$ 和绳子组 $\lbrace 2,4 \rbrace$ 不形成循环。因此,$X = 1$,$Y = 2$。
7 0
0 7
7 6
5 R 3 R
7 R 4 R
4 B 1 R
2 R 3 B
2 B 5 B
1 B 7 B
2 1