Контест Middle Задачи на Java спрашивают часто обновлено

Слияние отрезков

Условие

Дан набор отрезков [l, r]. Объедините все пересекающиеся и касающиеся (общая точка) отрезки и выведите результат по возрастанию левых концов.

Ввод: в первой строке n (1 ≤ n ≤ 10⁴), далее n строк l r (−10⁹ ≤ l ≤ r ≤ 10⁹).

Вывод: отрезки по одному в строке в формате l r.

Пример

4
1 3
8 10
2 6
15 18
1 6
8 10
15 18

Как подойти

Подсказки: 2
  1. Отсортируйте по левому концу.
  2. Вложенный отрезок не должен укоротить текущий.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.