#HK5208. 「UOI 2025 Stage 4 Day2」ABC 翻转
「UOI 2025 Stage 4 Day2」ABC 翻转
题目描述
题目译自 Ukrainian Olympiads in Informatics 2025 Stage 4 Day2 T3. Розворот ABC
给定一个由字符 A、B 和 C 组成的字符串 。
在一次操作中,你可以选择字符串中两个相邻的字符 ,如果它们的顺序是 AB、BC 或 CA,则可以将它们交换位置。
你需要找出可以对字符串 执行的最大连续操作次数。
在本题中,每个测试点包含多个输入数据组。你需要为每个数据组独立解决问题。
输入格式
输入的第一行包含一个整数 ,表示输入数据组的数量。接下来是各数据组的描述。
每个数据组的第一行包含一个整数 ,表示字符串 的长度。
每个数据组的第二行包含一个长度为 的字符串 ,由字符 A、B 和 C 组成。
保证所有数据组中 的总和不超过 。
输出格式
对于每个数据组,单独输出一行一个整数,表示可以对字符串 执行的最大连续操作次数。
2
5
ABCCA
19
CCAABBBABBAAABBCCAA
3
28
在第一个样例的第一个数据组中,对于字符串 ABCCA,最多可以执行 次连续操作。一个可能的操作序列为:[ABCCA BACCA, BACCA BACAC, BACAC BAACC]。
数据范围与提示
设 为单个测试中所有数据组的 之和。详细子任务附加限制及分值如下表所示:
| 子任务 | 分值 | 附加限制 |
|---|---|---|
| 答案为 或 | ||
| (对于 ) | ||
| 的形式为 $\texttt{AA}\ldots\texttt{AABB}\ldots\texttt{BBCC}\ldots\texttt{CC}$(即 $x \cdot \texttt{A} + y \cdot \texttt{B} + z \cdot \texttt{C}$,其中 , , 为正整数) | ||
| (对于 ) | ||
| , | ||
| 无附加限制 |