滑动窗口问题;
为以后这样的题当做一个模板思路吧。。。
class Solution {
public:
int characterReplacement(string s, int k) {
unordered_map<char,int> um;
int left=0,right=0;//窗口的左右两边
int count=0,res=0;//count为窗口中最多的字符数量
while(right<s.size())
{
count=max(count,++um[s[right]]);//计算每个窗口中最多的字符数量
while(right-left+1-count > k) //减小窗口的宽度去满足,最大替换数量k
{
um[s[left]]--;
left++;
}
res=max(res,right-left+1);
right++;
}
return res;
}
};