//  #牛客春招刷题训练营# https://www.nowcoder.com/discuss/726480854079250432
#include <array>
#include <iostream>
#include <string>
using namespace std;

int main() {
  ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
  string s;
  cin >> s;
  size_t size = s.size();
  string sa = s.substr(0, size / 2), sb = s.substr(size / 2, size / 2);//---------把字符串分成前部分和后部分
  array<int, 26> a{0}, b{0};
  for (int i = 0; i < size / 2; i++){
    a[sa[i] - 'a']++;
    b[sb[i] - 'a']++;
  }
  int maxa = 0, maxb = 0, suma = 0, sumb = 0;//------以前半部分为例,最优策略应该是把所有字母都换成出现次数最多的那一个。所以  前半部分的操作次数  =  前半部分的字母数(size / 2)  -  前半部分出现次数最多的字母。
  for (int i = 0; i < 26; i++){
    maxa = max(maxa, a[i]);
    maxb = max(maxb, b[i]);
    suma += a[i];
    sumb += b[i];
  }
  cout << (suma + sumb - maxa - maxb);//-------suma + sumb 应该改为size的当时没想到
}
// 64 位输出请用 printf("%lld")