Ctrl K

Самая широкая просека

Лёгкая
В лесу растут деревья, дерево номер i стоит в точке trees[i] = [x, y]. Лесники хотят прорубить вертикальную просеку — полосу между двумя вертикальными прямыми, бесконечную вверх и вниз, — так, чтобы внутри неё не росло ни одного дерева. Деревья, стоящие ровно на границе полосы, не мешают. Каждая граница просеки должна проходить через какое-нибудь дерево. Верните наибольшую возможную ширину такой просеки.
Пример 1
trees=[[6, 2], [1, 5], [9, 9], [3, 0]] → 3

Координаты x по порядку: 1, 3, 6, 9. Самый большой промежуток — между 3 и 6, его ширина 3.

Пример 2
trees=[[4, 1], [4, 8], [5, 3]] → 1

Два дерева стоят на одной вертикали x = 4, между ними полосу не проложить. Остаётся промежуток от 4 до 5 шириной 1.

Пример 3
trees=[[0, 0], [10, 10], [2, 7], [8, 1]] → 6
Ограничения
  • 2 ≤ len(trees) ≤ 10⁵
  • len(trees[i]) == 2
  • 0 ≤ x, y ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлияние в запасной хвост ЛёгкаяПобедитель с большинством голосов ЛёгкаяЕсть ли повтор ЛёгкаяУспеть на все встречи ЛёгкаяПотерянный билет Лёгкая
загружаем Python…
Вход
trees=[[6, 2], [1, 5], [9, 9], [3, 0]]
Ожидается
3

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