Дан массив интервалов intervals, где intervals[i] = [start_i, end_i]. Объедините все перекрывающиеся интервалы и верните массив непересекающихся интервалов, покрывающих все входные.
Результат отсортирован по началу интервала.
def merge_intervals(intervals: list[list[int]]) -> list[list[int]]:
merge_intervals([[1,3],[2,6],[8,10],[15,18]]) → [[1,6],[8,10],[15,18]]
merge_intervals([[1,4],[4,5]]) → [[1,5]]
- 1 ≤ len(intervals) ≤ 10⁴
- 0 ≤ start_i ≤ end_i ≤ 10⁴
intervals = [[1,3],[2,6],[8,10],[15,18]][[1,6],[8,10],[15,18]]intervals = [[1,4],[4,5]][[1,5]]intervals = [[1,1]][[1,1]]