#include <bits/stdc++.h>
using namespace std;
int a[300001];
const long long mod = 1000000007;
int main(int argc, const char* argv[]) {
  string S;
  cin >> S;
  int n = (int)S.size();
  string A(n, '2');
  int scr = 0;
  for (int i = 0; i < n; ++i) {
    char a = S[(i + n - 1) % n];
    char b = S[i];
    char c = S[(i + 1) % n];
    if (a == b && b == c)
      A[i] = '0';
    else if (a == b && b != c) {
      ++scr;
      A[i] = '1';
      A[(i + 1) % n] = '0';
    } else if (a != b && b == c)
      A[i] = '0';
  }
  int fst = 0;
  while (fst < n && !(A[fst] != '2' && A[(fst + 1) % n] == '2')) ++fst;
  if (fst == n) {
    if (A[0] == '2')
      cout << n / 2 << endl;
    else
      cout << scr << endl;
    return 0;
  }
  int j = 0;
  for (int i = 0; i < n; ++i) {
    char a = A[(i + fst) % n];
    char b = A[(i + fst + 1) % n];
    if (a == '2' && b != '2') {
      scr += (i - j + 1) / 2;
    }
    if (a != '2' && b == '2') j = i;
  }
  cout << scr << endl;
}
