#include <iostream>
#include <vector>
using namespace std;
int main() {
string s;
cin >> s;
int n = s.length();
vector<vector<int>> dp(n, vector<int>(2)); //表示到第i个位置至少需要染多少个
// dp[i][0]: 第i个是红色,dp[i][1]: 第i个是绿色
int count = 0;
dp[0][0] = s[0]=='R' ? 0 : 1;
dp[0][1] = s[0]=='G' ? 0 : 1;
for(int i=1;i<n; i++){
int flag = 1;
if(s[i]=='R') flag = 0; // flag 0 红 ,flag 1 绿
dp[i][0] = dp[i-1][0] + flag;
dp[i][1] = min(dp[i-1][0]+(1-flag), dp[i-1][1]+(1-flag));
}
cout << min(dp[n-1][0], dp[n-1][1]) << endl;
}