Menu
CoddyTech

Max Consecutive Ones

Дан массив nums, в котором каждое значение — это 0 или 1. Серия — это последовательность единиц, расположенных подряд, без 0 между ними. Верните длину самой длинной серии или 0, если в массиве нет ни одной единицы.

Функция

findMaxConsecutiveOnes(nums: integer-array) → integer
numsinteger-array
массив из 0 и 1
Возвращаетinteger
длина самой длинной последовательности идущих подряд единиц

Ограничения

  • 1 ≤ nums.length ≤ 2 × 104
  • Каждый nums[i] равен 0 или 1.

Примеры

Ввод
nums = [1, 1, 0, 1, 1, 1, 0, 1]
Вывод
3
Пояснение
Единицы образуют три последовательности: индексы 0–1 (длина 2), 3–5 (длина 3) и только индекс 7 (длина 1). Самая длинная имеет длину 3.

lock icon+14 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Что, если можно заменить до k нулей на единицы? Какой длины может быть самая длинная последовательность единиц и можно ли по-прежнему найти её за один проход?

Сбросить код
def findMaxConsecutiveOnes(nums):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

nums = [1, 1, 0, 1, 1, 1, 0, 1]

Ожидается

3