长春做商业平台网站,谷歌优化培训,wordpress过滤机制,装饰公司怎么做网站题目 给定一个二进制数组 nums 和一个整数 k#xff0c;如果可以翻转最多 k 个 0 #xff0c;则返回 数组中连续 1 的最大个数 。 解题
def longestOnes(nums, k):left 0max_len 0zero_count 0for right in range(len(nums)):# 如果遇到0#xff0c;统计当前窗口内0的个…题目 给定一个二进制数组 nums 和一个整数 k如果可以翻转最多 k 个 0 则返回 数组中连续 1 的最大个数 。 解题
def longestOnes(nums, k):left 0max_len 0zero_count 0for right in range(len(nums)):# 如果遇到0统计当前窗口内0的个数if nums[right] 0:zero_count 1# 如果窗口内的0的个数超过了k移动左指针while zero_count k:if nums[left] 0:zero_count - 1left 1# 计算当前窗口内1的最大长度max_len max(max_len, right - left 1)return max_lennums [1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]
k 2
print(longestOnes(nums, k)) # 输出: 8