AT_arc088_c [ARC088E] Papple Sort
题目描述
给定一个只包含小写英文字母的字符串 $S$。请判断是否可以通过反复交换相邻的两个字符,使得 $S$ 变为回文串。如果可以,请求出所需操作的最小次数。
输入格式
输入从标准输入读入,格式如下:
> $S$
输出格式
如果无法将其变为回文串,输出 $-1$。否则,输出操作的最小次数。
说明/提示
## 限制
- $1 \leq |S| \leq 2 \times 10^5$
- $S$ 仅由小写英文字母组成
## 样例解释 1
通过下面的操作,可以把 $S$ 变为回文串。
- 将第 $2$ 个字符和第 $3$ 个字符交换。新字符串 $S$ 变为 `ele`。
## 样例解释 2
通过下面的操作,可以把 $S$ 变为回文串。
- 将第 $5$ 个字符和第 $6$ 个字符交换。新字符串 $S$ 变为 `ataamtma`。
- 将第 $4$ 个字符和第 $5$ 个字符交换。新字符串 $S$ 变为 `atamatma`。
- 将第 $3$ 个字符和第 $4$ 个字符交换。新字符串 $S$ 变为 `atmaatma`。
- 将第 $2$ 个字符和第 $3$ 个字符交换。新字符串 $S$ 变为 `amtaatma`。
## 样例解释 3
无法将 $S$ 变为回文串。
由 ChatGPT 5 翻译