CODE-0005 · kimi-k3 (default)
def merge_intervals(intervals):
    """Merge overlapping or touching intervals into a minimal sorted list.

    Args:
        intervals: A list of [start, end] pairs with start <= end.

    Returns:
        A new list of non-overlapping [start, end] intervals, sorted by
        start, that cover exactly the same points as the input. Intervals
        that merely touch (end of one equals start of the next) are merged.
    """
    if not intervals:
        return []

    # Sort a copy so the caller's input is never mutated.
    sorted_intervals = sorted(intervals, key=lambda iv: (iv[0], iv[1]))

    merged = [[sorted_intervals[0][0], sorted_intervals[0][1]]]
    for start, end in sorted_intervals[1:]:
        last = merged[-1]
        # Touching intervals (start == last[1]) also merge, so use <=.
        if start <= last[1]:
            if end > last[1]:
                last[1] = end
        else:
            merged.append([start, end])

    return merged