#include #include #include #include #include #include using namespace std; int solve(long long n, string s){ array c; for(int i = 0; i < 3; ++i) c[i] = count(s.begin(), s.end(), 'A'+i); long long total_good = c[0]*c[0] + c[1]*c[1] + c[2]*c[2]; partial_sum(c.begin(), c.end(), c.begin()); vector v(n); for(int i = 0; i < n; ++i){ ++v[(i+n-c[(s[i]-'A'+0)%3])%n]; --v[(i+n-c[(s[i]-'A'+2)%3])%n]; } partial_sum(v.begin(), v.end(), v.begin()); return *max_element(v.begin(), v.end()) + (total_good - accumulate(v.begin(), v.end(),0))/n; } int main(){ long long n; string s; cin >> n >> s; reverse(s.begin(), s.end()); cout << n-solve(n, s) << "\n"; }