力扣 1004. 最大连续1的个数 III 滑动窗口

https://leetcode-cn.com/problems/max-consecutive-ones-iii/
在这里插入图片描述
思路:滑动窗口模板题吧……由于求的是最长连续子数组的长度,那么在维护窗口时没必要将其缩小(因为我们要的是最优解),这样就不需要额外操作来记录最大值了。

class Solution {
public:
    int longestOnes(vector<int>& A, int K) {
        int l=0,r=0,n=A.size();
        while(r<n)
        {
            if(!A[r++])
                --K;
            if(K<0&&!A[l++])
                ++K;
        }
        return r-l;
    }
};

版权声明:本文为xiji333原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。