Ctrl K

Номера билетов без пропусков

Лёгкая
Кассир собрал пачку проданных билетов и выписал их номера в массив tickets в случайном порядке. Пачка считается целой, если номера идут подряд без пропусков и повторов: пусть x — наименьший номер, а n — число билетов, тогда в пачке должен быть каждый номер от x до x + n - 1 ровно по одному разу. Верните True, если пачка целая, и False иначе.
Пример 1
tickets=[14, 12, 15, 13] → True

Наименьший номер 12, билетов 4 — нужны номера 12, 13, 14, 15. Все есть.

Пример 2
tickets=[5, 7, 6, 6] → False

Нужны номера 5, 6, 7, 8, а вместо 8 — второй билет с номером 6.

Пример 3
tickets=[0, 2] → False

Нужны номера 0 и 1, а номера 1 нет.

Ограничения
  • 1 ≤ len(tickets) ≤ 10⁵
  • -10⁹ ≤ tickets[i] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПобедитель с большинством голосов ЛёгкаяЕсть ли повтор ЛёгкаяПотерянный билет ЛёгкаяЗначения в обоих списках ЛёгкаяОбщие значения с повторами Лёгкая
загружаем Python…
Вход
tickets=[14, 12, 15, 13]
Ожидается
True

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