4108: A,BB互换操作成字典序最小的字符串
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:1
解决:1
题目描述
# A ↔ BB
## 题目描述
给定一个长度为 $N$ 的字符串 $S$,由字符 `A`、`B`、`C` 组成。你可以对 $S$ 进行以下两种操作任意次数:
1. 选择 $S$ 中的一个 `A`,删除它,并在该位置插入 `BB`。
2. 选择 $S$ 中相邻的两个 `B`,删除它们,并在该位置插入 `A`。
请找出通过这些操作可以得到的字典序最小的字符串。
输入
## 输入格式
输入$N$和$S$。
输出
## 输出格式
输出所求答案。
样例输入 复制
4
CBAA
样例输出 复制
CAAB
提示
## 输入输出样例
### 输入样例1
```
4
CBAA
```
### 输出样例1
```
CAAB
```
### 输入样例2
```
1
A
```
### 输出样例2
```
A
```
### 输入样例3
```
6
BBBCBB
```
### 输出样例3
```
ABCA
```
## 数据范围与提示
【样例1说明】
我们应该进行以下操作:
- 初始时,S = CBAA。
- 删除第 3 个字符 A 并插入 BB,得到 S = CBBBA。
- 删除第 2 和第 3 个字符 BB 并插入 A,得到 S = CABA。
- 删除第 4 个字符 A 并插入 BB,得到 S = CABBB。
- 删除第 3 和第 4 个字符 BB 并插入 A,得到 S = CAAB。
我们无法得到字典序比 CAAB 更小的字符串。因此,答案是 CAAB。
【样例2说明】
我们不进行任何操作。
【数据范围】
- $1 \leq N \leq 200000$
- $S$ 是一个长度为 $N$ 的字符串,仅由 `A`、`B`、`C` 组成。
## 题目来源
ARC136A