一:题目
二:上码
class Solution {
public:
string largestGoodInteger(string num) {
int slowIndex = 0;
int count = 0;
vector ans;
for (int fastIndex = 1; fastIndex < num.size(); fastIndex++) {
if (num[fastIndex] != num[slowIndex]) {
slowIndex++;
} else {//相等的时候记录相等的个数,快指针移动
count++;
if (count >= 2) {//说明相等的个数大于3
int temp = num[slowIndex] - '0';
ans.push_back(temp);
slowIndex++;
count = 0;
} else {
if (fastIndex + 1 < num.size() && num[slowIndex] != num[fastIndex+1]) count = 0;//处理012244情况
slowIndex++;
}
}
}
if (ans.size() == 0) return "";
sort(ans.begin(),ans.end());
string str1 = to_string(ans[ans.size()-1]);
string str2 = to_string(ans[ans.size()-1]);
string str3 = to_string(ans[ans.size()-1]);
string str = str1 + str2 + str3;
return str;
}
};