#include <bits/stdc++.h>
using namespace std;
int main() {
// your code goes here
string a;
cin>>a;
int n=a.size();
vector<int>arr(n,0);
unordered_map<int,int>pre; //hashmap contains prefix sum and index
pre[0]=-1;
for(int i=0;i<n;i++){
if(a[i]=='a'){
arr[i]=1;
}
else{
arr[i]=-1;
}
}
int mini=1e9;
int sum=0;
for(int i=0;i<n;i++){
sum+=arr[i];
if(pre.find(sum)!=pre.end()){
int len=i-pre[sum];
mini=min(len,mini);
}
}
cout<<"The minimum subarray that must be removed to get the array with equal count of a and b is:"<<mini;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglzdHJpbmcgYTsKCWNpbj4+YTsKCWludCBuPWEuc2l6ZSgpOwoJdmVjdG9yPGludD5hcnIobiwwKTsKCXVub3JkZXJlZF9tYXA8aW50LGludD5wcmU7ICAgICAvL2hhc2htYXAgY29udGFpbnMgcHJlZml4IHN1bSBhbmQgaW5kZXgKCXByZVswXT0tMTsKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCWlmKGFbaV09PSdhJyl7CgkJCWFycltpXT0xOwoJCX0KCQllbHNlewoJCQlhcnJbaV09LTE7CgkJfQoJfQoJaW50IG1pbmk9MWU5OwoJaW50IHN1bT0wOwoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJc3VtKz1hcnJbaV07CgkJaWYocHJlLmZpbmQoc3VtKSE9cHJlLmVuZCgpKXsKCQkJaW50IGxlbj1pLXByZVtzdW1dOwoJCQltaW5pPW1pbihsZW4sbWluaSk7CiAKCQl9Cgl9Cgljb3V0PDwiVGhlIG1pbmltdW0gc3ViYXJyYXkgdGhhdCBtdXN0IGJlIHJlbW92ZWQgdG8gZ2V0IHRoZSBhcnJheSB3aXRoIGVxdWFsIGNvdW50IG9mIGEgYW5kIGIgaXM6Ijw8bWluaTsKCXJldHVybiAwOwp9