func_code_string: #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;   }   