AtCoder Regular Contest 088
E
Papple Sort
AtCoder
⌀ 2231
原题
←F →
翻译中…

Problem Statement

翻译中…

You are given a string $S$ consisting of lowercase English letters. Determine whether we can turn $S$ into a palindrome by repeating the operation of swapping two adjacent characters. If it is possible, find the minimum required number of operations.

翻译中…

Constraints

翻译中…
  • $1 \leq |S| \leq 2 × 10^5$
  • $S$ consists of lowercase English letters.
翻译中…

Input

翻译中…

Input is given from Standard Input in the following format:

翻译中…

S

翻译中…

Output

翻译中…

If we cannot turn $S$ into a palindrome, print -1. Otherwise, print the minimum required number of operations.

翻译中…

样例

Input #1
eel
Output #1
1
We can turn $S$ into a palindrome by the following operation: - Swap the $2$-nd and $3$-rd characters. $S$ is now `ele`.
Input #2
ataatmma
Output #2
4
We can turn $S$ into a palindrome by the following operation: - Swap the $5$-th and $6$-th characters. $S$ is now `ataamtma`. - Swap the $4$-th and $5$-th characters. $S$ is now `atamatma`. - Swap the $3$-rd and $4$-th characters. $S$ is now `atmaatma`. - Swap the $2$-nd and $3$-rd characters. $S$ is now `amtaatma`.
Input #3
snuke
Output #3
-1
We cannot turn $S$ into a palindrome.
题目信息
题号
arc088_c
时间限制
2 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。