#P9353. [JOI 2023 Final] 现代机器 / Modern Machine

[JOI 2023 Final] 现代机器 / Modern Machine

Description

Bitaro 收到了一个 JOI 机器作为生日礼物。

JOI 机器由一个球、NN 个灯光瓷砖和 MM 个按钮组成。灯光瓷砖从 11NN 编号。当 Bitaro 打开电源时,灯光瓷砖 ii (1iN1 \leq i \leq N) 会发出颜色为 CiC_i(蓝色(B\texttt B)或红色(R\texttt R))的光。按钮从 11MM 编号。

如果 Bitaro 按下按钮 jj (1jM1 \leq j \leq M),会发生以下情况。

  1. 球被放置在灯光瓷砖 AjA_j 上。
  2. 灯光瓷砖 AjA_j 变为红色(无论其原始颜色如何)。
  3. 在球被移除之前,执行以下操作。 设 pp 为球当前所在的灯光瓷砖的索引。
    • 如果灯光瓷砖 pp 是蓝色的,灯光瓷砖 pp 变为红色。之后,如果 p=1p = 1,球被移除。否则,球移动到灯光瓷砖 p1p - 1
    • 如果灯光瓷砖 pp 是红色的,灯光瓷砖 pp 变为蓝色。之后,如果 p=Np = N,球被移除。否则,球移动到灯光瓷砖 p+1p + 1

Bitaro 对 JOI 机器很感兴趣。他计划进行 QQ 次实验。在第 kk 次实验中(1kQ1 \leq k \leq Q),在 Bitaro 打开电源后,Bitaro 按顺序按下按钮 Lk,Lk+1,,RkL_k, L_{k} + 1, \dots , R_k。在 Bitaro 按下一个按钮后,他不会按下下一个按钮,并等待球被移除。

给定 JOI 机器的信息和实验,编写一个程序来计算每次实验结束时颜色为红色的灯光瓷砖的数量。

Input Format

从标准输入读取以下数据。

NN MM
C1 C2CNC_1\ C_2 \dots C_N
A1 A2AMA_1\ A_2 \dots A_M
QQ
L1 R1L_1\ R_1
L2 R2L_2\ R_2
\dots
LQ RQL_Q\ R_Q

Output Format

向标准输出写入 QQ 行。在第 kk 行(1kQ1 \leq k \leq Q),输出应包含第 kk 次实验结束时颜色为红色的灯光瓷砖的数量。

5 1
RBRRB
4
1
1 1
1
5 3
RBRBR
1 3 4
2
2 3
1 3
5
0
10 3
BBRRBRBRRB
2 10 5
1
1 3
2
10 10
RRRRRRRRRR
3 1 4 1 5 9 2 6 5 3
5
1 7
2 8
3 9
4 10
1 10
4
8
10
0
9
10 10
RRRBBBBBBB
3 1 4 1 5 9 2 6 5 3
5
1 10
2 9
3 8
4 7
5 6
2
6
0
10
7
30 10
RRRBBRBBBRBBBRBRBRRRRRBBBBRBRR
3 28 2 29 1 30 6 14 7 7
10
1 10
2 3
2 5
2 8
3 3
3 6
4 5
4 7
5 9
10 10
21
15
15
4
17
16
14
20
12
23

Hint

【样例解释 #1】

第一次实验如下进行。

  1. Bitaro 按下按钮 1,球被放置在灯光瓷砖 4 上。
  2. 灯光瓷砖 4 变为红色。由于灯光瓷砖 4 的原始颜色是红色,灯光瓷砖 4 的颜色没有改变。
  3. 之后,执行以下操作。
    (1)由于灯光瓷砖 4 的当前颜色是红色,灯光瓷砖 4 变为蓝色,球移动到灯光瓷砖 5。
    (2)由于灯光瓷砖 5 的当前颜色是蓝色,灯光瓷砖 5 变为红色,球移动到灯光瓷砖 4。
    (3)由于灯光瓷砖 4 的当前颜色是蓝色,灯光瓷砖 4 变为红色,球移动到灯光瓷砖 3。
    (4)由于灯光瓷砖 3 的当前颜色是红色,灯光瓷砖 3 变为蓝色,球移动到灯光瓷砖 4。
    (5)由于灯光瓷砖 4 的当前颜色是红色,灯光瓷砖 4 的颜色变为蓝色,球移动到灯光瓷砖 5。
    (6)由于灯光瓷砖 5 的当前颜色是红色,灯光瓷砖 5 的颜色变为蓝色,球被移除。

实验结束后,灯光瓷砖 1 是唯一一个当前颜色为红色的灯光瓷砖。因此,输出 1。

本样例满足子任务 1,2,3,6,7 的限制。

【样例解释 #2】

对于第一次实验,灯光瓷砖 1, 2, 3, 4, 5 是实验结束后当前颜色为红色的灯光瓷砖。由于有五个这样的灯光瓷砖,输出 5。

对于第二次实验,没有灯光瓷砖在实验结束后颜色为红色。因此,输出 0。

本样例满足子任务 3,6,7 的限制。

【样例解释 #3】

本样例满足子任务 1,2,3,6,7 的限制。

【样例解释 #4】

本样例满足子任务 3,4,5,6,7 的限制。

【样例解释 #5】

本样例满足子任务 3,5,6,7 的限制。

【样例解释 #6】

本样例满足子任务 6,7 的限制。

【数据规模】

对全部的测试点,保证:

  • 3N1.2×1053 \leq N \leq 1.2 \times 10^5
  • 1M1.2×1051 \leq M \leq 1.2 \times 10^5
  • Ci{B,R}C_i \in \{\texttt{B},\texttt{R}\}
  • 1AjN1 \leq A_j \leq N
  • 1Q1.2×1051 \leq Q \leq 1.2 \times 10^5
  • 1LkRkM1 \leq L_k \leq R_k \leq M
  • N,M,Aj,Q,Lk,RkN, M, A_j, Q, L_k, R_k 均为整数。

【子任务】

本题采用捆绑测试

  1. (3 分) N,M300N,M \leq 300Q=1Q = 1
  2. (12 分) N,M7000N, M \leq 7000Q=1Q = 1
  3. (10 分) Q5Q \leq 5
  4. (11 分) N=10N = 10Ci=RC_i = \texttt R
  5. (26 分) 存在一个整数 t[0,N]t \in [0, N],满足对 1it1 \leq i \leq tCi=RC_i = \texttt R;且对 t<iNt < i \leq NCi=BC_i = \texttt B
  6. (17 分) Aj20A_j \leq 20Aj>N20A_j > N - 20
  7. (21 分) 无特殊约定。

题面翻译由 ChatGPT-4o 提供。