AT_kupc2021_j Delete Balls

题目描述

我们有一个长度为 $N$ 的字符串 $S$,字符串由字符 `R`、`B` 和 `W` 组成。 这些字符代表 $N$ 个排成一排的球,第 $i$ 个球的颜色由 $S$ 的第 $i$ 个字符决定:`R` 为红色,`B` 为蓝色,`W` 为白色。 开始时,你可以将所有白色球重新涂成红色或蓝色。接下来,你可以进行以下操作: - 找到一个连续的球的子序列,其中包含 $r$ 个红色球和 $b$ 个蓝色球,然后将该子序列移除。移除后,剩下的球将按顺序紧密排列。 你的目标是通过巧妙涂色和合理操作,使你能进行的操作次数最多。请计算最多可以进行多少次这样的操作。

输入格式

以如下格式从标准输入获取: > $N$ $r$ $b$ $S$

输出格式

输出可以进行的最大操作次数。

说明/提示

- $1 \leq N \leq 2 \times 10^5$ - $1 \leq r, b$ - $r + b \leq N$ - $N, r, b$ 为整数 - $S$ 是一个只包含 `R`、`B` 和 `W` 的长度为 $N$ 的字符串 ### 样例解释 - **案例 1:** 首先把第 3 个白球涂成红色。在第一次操作中,选择从第 2 个蓝球到第 3 个红球的连续子序列并移除。第二次操作中,从第 1 个蓝球到第 2 个红球的序列被移除。总共可以进行 2 次操作,而无法进行更多,因此答案是 2。 - **案例 2:** 需要注意的是,移除的子序列需要在位置上是连续的。 - **案例 3:** 不一定要把所有白球涂成同样的颜色。 **本翻译由 AI 自动生成**