#include #include #include #include #include #include using namespace std; int solve(long long n, const 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(), 0L)) / n; } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); long long n; string s; cin >> n >> s; int a = solve(n, s); reverse(s.begin(), s.end()); int b = solve(n, s); cout << n - max(a, b) << "\n"; }