Ctrl K

Выровнять температуру

Лёгкая
В здании несколько комнат, temps[i] — температура в i-й комнате. У каждого термостата можно один раз (или ни разу) сдвинуть температуру на любое целое число градусов от -limit до limit. Разброс — это разница между самой тёплой и самой холодной комнатой. Верните наименьший разброс, которого можно добиться.
Пример 1
temps=[18, 25, 21], limit=2 → 3

Холодную комнату поднимаем до 20, жаркую опускаем до 23, третью оставляем 21: разброс 23 - 20 = 3. Меньше не получится.

Пример 2
temps=[12, 15, 14, 13], limit=2 → 0

Все комнаты можно выставить на 13 или 14 градусов — разброс 0.

Пример 3
temps=[7], limit=0 → 0

Одна комната: самая тёплая и самая холодная совпадают.

Ограничения
  • 1 ≤ len(temps) ≤ 10⁴
  • 0 ≤ temps[i] ≤ 10⁴
  • 0 ≤ limit ≤ 10⁴
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПрибавить единицу к числу из цифр ЛёгкаяПотерянный билет ЛёгкаяШтампы в углу таблицы ЛёгкаяЛучшее произведение трёх ЛёгкаяСамый большой треугольник на доске Лёгкая
загружаем Python…
Вход
temps=[18, 25, 21], limit=2
Ожидается
3

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