Xâu đối xứng (HSG'20)

View as PDF




Author:
Problem type
Points: 900 (p) Time limit: 1.0s Memory limit: 640M Input: stdin Output: stdout

Cho một xâu ký tự \(S\) chỉ gồm các chữ cái thường a..z. Xâu đối xứng là xâu kí tự mà khi viết từ phải qua trái hay từ trái qua phải thì xâu đó không thay đổi. Ví dụ: \(madam\), \(ioi\) là các xâu đối xứng.

Yêu cầu: Với xâu ký tự \(S\) cho trước, hãy tính số ký tự bỏ đi ít nhất để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Ví dụ:

  • Cho xâu aammmda thì cần bỏ 2 ký tự am thì xâu còn lại là ammda và xếp lại thành madam là xâu đối xứng.
  • Cho xâu aaabbcc thì không cần bỏ ký tự thì xâu đó xếp lại thành bcaaacb là xâu đối xứng.

Input

  • Một xâu ký tự \(S\)\(n\) ký tự (\(n \le 10^5\)) chỉ gồm các ký tự chữ cái thường a..z.

Output

  • Một số nguyên là số lượng ký ít nhất cần bỏ để các ký tự còn lại có thể sắp xếp được thành một xâu đối xứng.

Scoring

  • Subtask \(1\): (\(30\%\) số điểm): chỉ chứa 2 ký tự ab.
  • Subtask \(2\): (\(30\%\) số điểm): chỉ chứa 3 loại ký tự bất kỳ.
  • Subtask \(3\): (\(40\%\) số điểm): trường hợp còn lại.

Example

Test 1

Input
aammmda
Output
2

Test 2

Input
aaabbcc
Output
0

Comments (24)

Order by
Loading comments...