Ctrl K
Курс · шаг 23 из 79К шагуДальше

Самый длинный ряд подряд идущих чисел

Средняя
Дан неупорядоченный массив целых чисел values. Найдите наибольшее k такое, что для некоторого x все числа x, x + 1, …, x + k - 1 встречаются в массиве (в любых позициях). Верните k. Повторяющиеся значения считаются один раз. Для пустого массива ответ — 0. Сортировка даёт O(n log n) — постарайтесь уложиться в O(n).
Пример 1
values=[40, 7, 5, 41, 6, 8, -1] → 4

Числа 5, 6, 7, 8 есть в массиве — это непрерывный ряд длины 4; 40, 41 дают только 2.

Пример 2
values=[3, 3, 2, 2] → 2

Повторы не удлиняют ряд: есть только 2 и 3, ответ 2.

Пример 3
values=[] → 0
Ограничения
  • 0 ≤ len(values) ≤ 10⁵
  • -10⁹ ≤ values[i] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСклеить карточки контактов СредняяЦепочки синонимов СредняяПоле, разрезанное чертами СредняяПерестановки по связям СредняяВсе пересказы фразы Средняя
загружаем Python…
Вход
values=[40, 7, 5, 41, 6, 8, -1]
Ожидается
4

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