Ctrl K

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

Средняя
Дан неупорядоченный массив целых чисел 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 тестов на сервере, включая скрытые.