Ctrl K

Гирлянда без плавных переходов

Средняя
Дизайнер собирает гирлянду из лампочек разной яркости: brightness[i] — яркость i-й лампочки, все значения различны. Ему не нравятся «плавные переходы»: место, где яркость лампочки ровно равна среднему арифметическому яркостей двух её соседей. У крайних лампочек сосед один, к ним правило не относится. Есть простой способ развесить лампочки без плавных переходов. Отсортируйте яркости по возрастанию. Первые ⌈n/2⌉ значений — тусклая половина, остальные — яркая. Повесьте лампочки, чередуя половины: самая тусклая из тусклых, самая тусклая из ярких, вторая из тусклых, вторая из ярких и так далее. Верните гирлянду, собранную именно так. Подумайте, почему в ней не окажется ни одного плавного перехода.
Пример 1
brightness=[7, 1, 4, 9, 3] → [1, 7, 3, 9, 4]

По возрастанию: 1, 3, 4, 7, 9. Тусклая половина — 1, 3, 4, яркая — 7, 9. Чередуем: [1, 7, 3, 9, 4]. Ни одна лампочка не равна среднему соседей: например, (1 + 3) / 2 = 2 ≠ 7.

Пример 2
brightness=[20, 50, 10, 40] → [10, 40, 20, 50]

По возрастанию: 10, 20, 40, 50. Половины — 10, 20 и 40, 50, итог [10, 40, 20, 50].

Пример 3
brightness=[2, 0, 1] → [0, 2, 1]
Ограничения
  • 3 ≤ len(brightness) ≤ 10⁵
  • 0 ≤ brightness[i] ≤ 10⁵
  • Все значения brightness различны
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамое большое число из кусков СредняяСтудии для записи СредняяНизко — высоко — низко СредняяСтрого низко — высоко СредняяОтменить как можно меньше встреч Средняя
загружаем Python…
Вход
brightness=[7, 1, 4, 9, 3]
Ожидается
[1, 7, 3, 9, 4]

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