#include <bits/stdc++.h>
using namespace std;
int main() {
  string S;
  cin >> S;
  vector<string> Sk;
  for (int i = 0; i < S.size(); i++) {
    string next = S.substr(i, 1);
    long long k = Sk.size();
    if (i == 0) {
      Sk.push_back(next);
      continue;
    } else if (i == 1) {
      if (Sk[k - 1] == next) {
        Sk[k - 1] = Sk[k - 1] + next;
      } else {
        Sk.push_back(next);
      }
      continue;
    }
    if (Sk[k - 1].size() > 1) {
      if (Sk[k - 2] == Sk[k - 1].substr(0, 1)) {
        Sk.push_back(next);
      } else {
        Sk.push_back(Sk[k - 1].substr(1, 1) + next);
        Sk[k - 1] = Sk[k - 1].substr(0, 1);
      }
    } else {
      if (Sk[k - 1] == next) {
        Sk[k - 1] = Sk[k - 1] + next;
      } else {
        Sk.push_back(next);
      }
    }
  }
  cout << Sk.size() << endl;
  return 0;
}
