双指针
也可以前向dp+反向dp来做。空间复杂度可以用ll和rr来优化。
class Solution(object):
def longestOnes(self,nums,k):
left, right = 0, 0
res = 0
#遍历右指针
for right in range(len(nums)):
if nums[right]==0: #右指针会出现的情况
k-=1
#遍历左指针 (while: 区间不符合题意)
while k<0:
if nums[left]==0: #左指针会出现的情况
k+=1
left += 1 #左+=1
res = max(res, right - left + 1) # 需要更新结果
return res