3
int maxRepOpt1(string text) {4
vector<pair<int, int>> intervals[26];6
for (int i = 0; i < text.size();) {8
while (i < text.size() && text[i] == text[st]) {12
intervals[text[st] - 'a'].push_back({st, ed});16
for (int i = 0; i < 26; i++) {17
for (int j = 0; j < intervals[i].size(); j++) {19
int len1 = intervals[i][j].second - intervals[i][j].first + 1;20
if (intervals[i].size() > 1) len1++;25
if (j + 1 < intervals[i].size() &&26
intervals[i][j].second + 2 == intervals[i][j + 1].first) {27
int len2 = intervals[i][j].second - intervals[i][j].first + 1 +28
intervals[i][j + 1].second - intervals[i][j + 1].first + 1;29
if (intervals[i].size() > 2) { // 一定有一个愿意牺牲