传统题 1000ms 256MiB

反转AB

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定一个长度为 nn 的字符串 ss,该字符串仅由字符 A\texttt{A}B\texttt{B} 组成。你可以进行如下操作:

  • 选择一个下标 1in11 \le i \le n - 1,满足 si=As_i = \texttt{A}si+1=Bs_{i + 1} = \texttt{B},然后可以交换 sis_isi+1s_{i+1}

对于每个下标 1in11 \le i \le n - 1,每个位置至多只能进行一次上述操作。但你可以按任意顺序进行操作。请你求出最多可以进行多少次该操作。

输入格式

每组测试数据包含多组测试用例。第一行为测试用例组数 tt1t10001 \le t \le 1000)。接下来是每组测试用例的描述。

每组测试用例的第一行包含一个整数 nn2n21052 \le n \le 2\cdot 10^5),表示字符串 ss 的长度。

第二行包含一个字符串 sssi=As_i = \texttt{A}si=Bs_i = \texttt{B})。

保证所有测试用例中 nn 的总和不超过 21052\cdot 10^5

输出格式

对于每组测试用例,输出一个整数,表示最多可以进行的操作次数。

输入输出样例

3
2
AB
4
BBBA
4
AABB
1
0
3

说明/提示

在第一个测试用例中,我们可以对 i=1i=1 进行一次操作,因为 s1=As_1 = \texttt{A}s2=Bs_2 = \texttt{B}

在第二个测试用例中,可以证明无法进行任何操作。

在第三个测试用例中,我们可以先对 i=2i=2 进行操作,得到 ABAB\texttt{ABAB},然后对 i=3i=3 进行操作,得到 ABBA\texttt{ABBA},最后对 i=1i=1 进行操作,得到 BABA\texttt{BABA}。注意,尽管最后 s2=As_2 = \texttt{A}s3=Bs_3 = \texttt{B},但我们不能再次对 i=2i=2 进行操作,因为每个下标最多只能操作一次。

周赛#1021(div3)复现赛

未参加
状态
已结束
规则
IOI
题目
5
开始于
2026-3-28 21:30
结束于
2026-4-4 13:30
持续时间
1 小时
主持人
参赛人数
11