#include #include #include #include #include #include using namespace std; typedef uint uint32_t; int main() { string S; cin >> S; int N = S.length(); map mr, ml; int c = 0; ml[0] = -1; for (int i = 0; i < N; i++) { if (S[i] == 'A') c++; else c--; if (ml.count(c) == 0) { ml[c] = i; } mr[c] = i; } int m = 0; for (auto itr = ml.begin(); itr != ml.end(); itr++) { if (mr.count(itr->first) == 0) continue; int rp = mr[itr->first]; int lp = itr->second; // cout << itr->first << ' ' << itr->second << ' ' << rp << endl; m = max(m, rp - lp); } cout << m << endl; }