Ctrl K

Чётные и нечётные лесенки

Сложная
Даны два массива first и second, в которых записаны только нули и единицы. Каждый ноль нужно заменить положительным **чётным** числом, а каждую единицу — положительным **нечётным**. После замены оба массива должны строго возрастать, а все числа в них — быть попарно различными (одно и то же число нельзя использовать дважды ни в одном массиве, ни в обоих сразу). Верните наименьшее возможное значение самого большого числа, которое окажется в массивах после замены.
Пример 1
first=[1, 1], second=[0] → 3

Например, first = [1, 3], second = [2]: все числа разные, нечётные стоят на местах единиц, чётное — на месте нуля. Больше 3 не понадобилось.

Пример 2
first=[0, 0], second=[0, 0] → 8

Нужны четыре разных чётных числа, самые маленькие — 2, 4, 6, 8. Например, first = [2, 6], second = [4, 8].

Пример 3
first=[], second=[0, 1, 1] → 5

Первый массив пуст, а второй превращается в [2, 3, 5].

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

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