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