#include <iostream>
#include <string>
using namespace std;
string helper(string str) {
 if (str.size() <= 4) {
  return str;
 }
 for (int i = 0; i < str.size(); ++i) {
  for (int j = str.size() - 1; j > i; --j) {
   if (str[j] != str[i]) continue;
   int k = 0;
   while (j + k < str.size() && str[i + k] == str[j + k]) ++k;
   string base = str.substr(i, k);
   int len = j - i;
   if (len % k != 0) continue;
   int num = len / k + 1;
   if (3 + k >= j - i + k) continue;
   int n = num - 1;
   while (--n) {
    if (base == str.substr(i + n*k, k)) continue;
    else break;
   }
   if (n != 0) continue;
   else {
    string res = str.substr(0, i);
    string numstr = to_string(num);
    res += numstr;
    res += '[';
    string next = helper(base);
    res += next;
    res += ']';
    res += str.substr(j + k);
    return res;
   }
  }
 }
}
int main() {
 string str;
 cin >> str;
 if (str.size() <= 4) {
  cout << str.size() << endl;
  return 0;
 }
 cout << helper(str).size() << endl;
 system("pause");
 return 0;
}