原题目:https://leetcode-cn.com/problems/max-consecutive-ones-iii/
思路:
滑动窗口
代码:
class Solution {
public:
int longestOnes(vector<int>& A, int K) {
int maxlen =0;
int left=0,right=0;
while(right<A.size()){
if(A[right]==0){
//不可以变换,找出第一个变换过的0,越过他,变换现在的0.
if(K==0){
while(A[left]==1) left++;
left++;
}
//可以将0变为1,
else{
K--;
}
}
maxlen = max(maxlen,++right - left);
}
return maxlen;
}
};