class Solution {
public:
int maximumLength(string s) {
unordered_map<string, int> hash;
for (int i = 0; i < s.size(); i ++ ) {
string str;
for (int j = i; j < s.size(); j ++ ) {
if (s[j] == s[i]) str += s[j];
else break;
hash[str] ++ ;
}
}
int res = -1;
string str;
for (auto [k, v]: hash)
if (k.size() > str.size() && v >= 3) str = k, res = max(res, (int)k.size());
return res;
}
};