# Max Consecutive Ones

这道题是每个1的group之间最多间隔1个0，题目generalize成每个1的group之间最多间隔k个

间隔为1的解法：

```python
class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        prev = -1
        curr = 0
        res = 0
        for num in nums:
            if num == 0:
                prev= curr
                curr = 0
            else:
                curr+=1
            res = max(res,prev+curr+1)
        return res
```

间隔为K的解法，sliding window的套路，当zero count超过k，头指针i就向前

```python
class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        k=1
        res = 0
        zero = 0
        i = 0
        for j,num in enumerate(nums):
            if num == 0:
                zero+=1
            while zero > k:
                if nums[i] == 0:
                    zero-=1
                i+=1
            res = max(res,j-i+1)
        return res
        
        
```
