Ctrl K

Самая длинная серия единиц с одной правкой

Средняя
Лента bits состоит из нулей и единиц. Разрешается заменить на единицу не больше одного нуля. Верните наибольшую длину непрерывного отрезка из одних единиц, которую можно получить. Дополнительно: как решить задачу, если числа приходят потоком по одному и хранить их все нельзя?
Пример 1
bits=[1, 1, 0, 1, 0, 1, 1, 1] → 5

Если исправить второй ноль, получится [1, 1, 0, 1, 1, 1, 1, 1] — пять единиц подряд. Исправление первого нуля даёт только четыре.

Пример 2
bits=[0, 0, 0] → 1

Одну позицию можно превратить в единицу — длина 1.

Пример 3
bits=[1, 1, 1] → 3
Ограничения
  • 1 ≤ len(bits) ≤ 10⁵
  • bits[i] — 0 или 1
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиОтрезки с ровным шагом СредняяСамый длинный общий кусок СредняяПилообразные показания СредняяДва непересекающихся отрезка СредняяДва отрезка с нужной суммой Средняя
загружаем Python…
Вход
bits=[1, 1, 0, 1, 0, 1, 1, 1]
Ожидается
5

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 89 тестов на сервере, включая скрытые.