题目描述
有 N 根绳子,每根绳子的一端被涂成红色,另一端被涂成蓝色。绳子的编号从 1 到 N。
接下来要进行 M 次操作。在第 i 次操作中,将绳子 Ai 的颜色为 Bi 的一端与绳子 Ci 的颜色为 Di 的一端连接起来。这里,颜色 R 表示红色,颜色 B 表示蓝色。对于每根绳子,相同颜色的端点不会被多次连接。
所有操作结束后,请输出所有连成一组的绳子中,形成环的组数 X 和不形成环的组数 Y。
这里,连成一组的绳子集合 {v0,v1,…,vx−1} 被认为是环状的,当且仅当可以重新排列 v 的顺序,使得对于每个 0≤i<x,绳子 vi 和绳子 v(i+1)modx 是连接在一起的。
输入格式
输入以如下格式从标准输入读入。
N M A1 B1 C1 D1 A2 B2 C2 D2 ⋮ AM BM CM DM
输出格式
对于所有连成一组的绳子,输出环状的组数 X 和非环状的组数 Y,以空格分隔,按此顺序输出。
样例 1
输入
5 3
3 R 5 B
5 R 3 B
4 R 2 B
输出
1 2
样例 2
输入
7 0
输出
0 7
样例 3
输入
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
说明/提示
限制条件
- 1≤N≤2×105
- 0≤M≤2×105
- 1≤Ai,Ci≤N
- $(A\_i, B\_i) \neq (A\_j, B\_j),\ (C\_i, D\_i) \neq (C\_j, D\_j)\ (i \neq j)$
- (Ai,Bi)=(Cj,Dj)
- N,M,Ai,Ci 是整数
- Bi,Di 只能是
R 或 B
样例解释 1
连成一组的绳子有 {1}、{2,4}、{3,5} 共 3 组。其中 {3,5} 是环状的,{1} 和 {2,4} 不是环状的。因此 X=1,Y=2。
由 ChatGPT 4.1 翻译