AT_joi2026_yo2_c JOI エリミネーター (JOI Eliminator)
题目描述
有一个由 `J`、`O`、`I` 组成的长度为 $N$ 的字符串 $S$。JOI 君会对字符串 $S$ 重复执行如下操作,直到无法再操作为止。
- 在 $S$ 中选择连续出现一次 `J`、`O`、`I`(顺序为 `J`,`O`,`I`)的位置,将其替换为 `O`、`I`、`J` 的顺序。
可以证明,操作一定会终止,并且不管每次选择哪一处进行操作,最终得到的字符串都是唯一的。
给定初始字符串 $S$ 的信息,请编写程序输出最终得到的字符串 $S$。
输入格式
输入按以下格式给出。
> $N$ $S$
输出格式
请输出最终得到的字符串 $S$,占一行。
说明/提示
## 子任务
1.($14$ 分)$N \leq 100$。
2.($27$ 分)$N$ 是 $3$ 的倍数,$S$ 是 `JOI` 重复 $N / 3$ 次得到的字符串。
3.($29$ 分)存在整数 $k \ (2 \leq k \leq N)$,使得 $S$ 的第 $1$ 到第 $k$ 个字符全是 `J`,而第 $k+1$ 个字符及之后的字符均不是 `J`。
4.($30$ 分)无额外约束。
## 样例解释 1
例如,JOI 君可以按如下方式操作:
初始时,$S = $ `JOIJOI`。
1. 对第 $1$ 到第 $3$ 个字符操作后,$S = $ `OIJJOI`。
2. 对第 $4$ 到第 $6$ 个字符操作后,$S = $ `OIJOIJ`。
3. 对第 $3$ 到第 $5$ 个字符操作后,$S = $ `OIOIJJ`。
此时无法再进行操作,因此输出 `OIOIJJ`。
这个输入满足子任务 $1,2,4$ 的约束条件。
## 样例解释 2
该输入满足子任务 $1,3,4$ 的约束条件。
## 样例解释 3
该输入满足子任务 $1,4$ 的约束条件。
## 数据范围
- $3 \leq N \leq 500\,000$。
- $S$ 是由 `J`、`O`、`I` 组成的长度为 $N$ 的字符串。
- $N$ 为整数。
由 ChatGPT 5 翻译