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

Xem PDF

Điểm: 900 (p) Thời gian: 1.0s Bộ nhớ: 640M Input: bàn phím Output: màn hình

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

Bình luận