AT_abc293_d.[ABC293D] Tying Rope

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有 NN 根绳子,每根绳子的一端被涂成红色,另一端被涂成蓝色。绳子的编号从 11 到 NN。

接下来要进行 MM 次操作。在第 ii 次操作中,将绳子 AiA_i 的颜色为 BiB_i 的一端与绳子 CiC_i 的颜色为 DiD_i 的一端连接起来。这里,颜色 R 表示红色,颜色 B 表示蓝色。对于每根绳子,相同颜色的端点不会被多次连接。

所有操作结束后,请输出所有连成一组的绳子中,形成环的组数 XX 和不形成环的组数 YY。

这里,连成一组的绳子集合 {v0,v1,…,vx−1}\lbrace v_0, v_1, \ldots, v_{x-1} \rbrace 被认为是环状的,当且仅当可以重新排列 vv 的顺序,使得对于每个 0≤i<x0 \leq i < x,绳子 viv_i 和绳子 v(i+1) mod xv_{(i+1)\bmod x} 是连接在一起的。

输入格式

输入以如下格式从标准输入读入。

NN MM A1A_1 B1B_1 C1C_1 D1D_1 A2A_2 B2B_2 C2C_2 D2D_2 ⋮\vdots AMA_M BMB_M CMC_M DMD_M

输出格式

对于所有连成一组的绳子,输出环状的组数 XX 和非环状的组数 YY,以空格分隔,按此顺序输出。

输入输出样例

  • 输入#1

    5 3
    3 R 5 B
    5 R 3 B
    4 R 2 B

    输出#1

    1 2
  • 输入#2

    7 0

    输出#2

    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

    输出#3

    2 1

说明/提示

限制条件

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 0≤M≤2×1050 \leq M \leq 2 \times 10^5
  • 1≤Ai,Ci≤N1 \leq A_i, C_i \leq N
  • (Ai,Bi)≠(Aj,Bj), (Ci,Di)≠(Cj,Dj) (i≠j)(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)(A_i, B_i) \neq (C_j, D_j)
  • N,M,Ai,CiN, M, A_i, C_i 是整数
  • Bi,DiB_i, D_i 只能是 R 或 B

样例解释 1

连成一组的绳子有 $ \lbrace 1 \rbrace 、、 \lbrace 2,4 \rbrace 、、 \lbrace 3,5 \rbrace $ 共 33 组。其中 $ \lbrace 3,5 \rbrace $ 是环状的,$ \lbrace 1 \rbrace $ 和 $ \lbrace 2,4 \rbrace $ 不是环状的。因此 X=1,Y=2X=1, Y=2。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页