2024. 考试的最大困扰度
思路:双指针,本题是指找到一个最大的区间,使其中的T或F的数量不超过k即可
class Solution {
public:
int maxConsecutiveAnswers(string answerKey, int k) {
int ans=0;
int mx=0;
for(int i=0,j=0;j<answerKey.size();j++){
if(answerKey[j]=='F') ans++;
while(ans>k){
if(answerKey[i]=='F') ans--;
i++;
}
mx=max(mx,j-i+1);
}
ans=0;
for(int i=0,j=0;j<answerKey.size();j++){
if(answerKey[j]=='T') ans++;
while(ans>k){
if(answerKey[i]=='T') ans--;
i++;
}
mx=max(mx,j-i+1);
}
return mx;
}
};