Problem · Array

Max Consecutive Ones III (for E5 :)

MediumMetaFULLTIMEPHONE SCREEN
See Meta hiring insights

This is Max Consecutive Ones III, LC 1004 :)

The other question was - Get Minimum Round Trip Cost (: for E4 && E5 :) --> Click me, I ma a link~

Given a binary array nums and an integer k, return the maximum number of consecutive 1's in the array if you can flip at most k 0's.

Function Description

Complete the function longestOnes in the editor.

longestOnes has the following parameters:

  1. 1. int[] nums: a binary array
  2. 2. int k: the maximum number of 0's that can be flipped

Returns

int: the maximum number of consecutive 1's

Examples
01 · Example 1
nums = [1,1,1,0,0,0,1,1,1,1,0]
k = 2
return = 6

[1,1,1,0,0,1,1,1,1,1,1]
Bolded numbers were flipped from 0 to 1. The longest subarray is underlined.

02 · Example 2
nums = [0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1]
k = 3
return = 10

[0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1]
Bolded numbers were flipped from 0 to 1. The longest subarray is underlined.

Constraints
  • 1 <= nums.length <= 10^5
  • nums[i] is either 0 or 1.
  • 0 <= k <= nums.length
More Meta problems
drafts saved locally
public int longestOnes(int[] nums, int k) {
  // write your code here
}
nums[1,1,1,0,0,0,1,1,1,1,0]
k2
expected6
sign in to submit