class Solution {
public:
int longestOnes(vector<int>& nums, int k) {
int sum0=0;
int sum1=0;
int l=0;
int max=0;
for(int i=0;i<nums.size();i++){
if(nums[i]==0){
sum0+=1;
}
else{
sum1+=1;
}
if(k<sum0){
max=max>(i-l)?max:(i-l);
}
while(k<sum0){
if(nums[l]==0){
sum0-=1;
l+=1;
}
else{
sum1-=1;
l+=1;
}
}
}
if(nums.size()-l>max)
max=nums.size()-l;
// max=max>(nums.size()-l)?max:(nums.size()-l);
return max;
}
};
LEETCODE 1004. 最大连续1的个数 III
2024-04-20 20:38:01 13 阅读