#XMOJ11030. 交换AB

交换AB

说明

时间限制:1 Sec 内存限制:256 MB 输入文件ab.in 输出文件ab.out

现有一个仅由字符 A 和 B 组成的字符串。

允许对该字符串执行以下操作:

- 每次操作可交换相邻两个字符的位置

请问,要将字符串中所有字符 A 移到左侧、所有字符 B 移到右侧,最少需要执行多少次操作?

输入格式

一个仅由字符 A 和 B 组成的字符串 $S$。

输出格式

输出所需的最少操作次数。

样例

样例 1

BA

1

样例说明:

只需 11 次交换操作,即可将 BA 变为 AB。

样例 2

B

0

样例说明:

字符串可能只有 11 个字符。

这种情况下,字符 B 已经处于最右侧,无需移动。

样例 3

ABAABA

4

样例说明:

可按照如下步骤完成移动,最少需要 44 次操作:

「ABAABA」→「ABAAAB」→「AABAAB」→「AAABAB」→「AAAABB」

数据范围

对于 100% 的数据,字符串长度满足 $1 \le |S| \le 12$。