К задачам

Объединение интервалов

СредняяАлгоритмы
Лучше работает на десктопе
СортировкаIntervals

Дан массив интервалов intervals, где intervals[i] = [start_i, end_i]. Объедините все перекрывающиеся интервалы и верните массив непересекающихся интервалов, покрывающих все входные.

Результат отсортирован по началу интервала.

Сигнатура

def merge_intervals(intervals: list[list[int]]) -> list[list[int]]:

Constraints

  • 1 ≤ len(intervals) ≤ 10⁴
  • 0 ≤ start_i ≤ end_i ≤ 10⁴

Примеры

Пример 1

Вход:
intervals = [[1,3],[2,6],[8,10],[15,18]]
Выход:[[1,6],[8,10],[15,18]]

Пример 2

Вход:
intervals = [[1,4],[4,5]]
Выход:[[1,5]]

Пример 3

Вход:
intervals = [[1,1]]
Выход:[[1,1]]
Код
Python · Ctrl/⌘ + Enter для запуска
Лимит
10:00
Консоль
Нажмите кнопку запуска или Ctrl+Enter
Объединение интервалов — Алгоритмы задача — ML Mentor