CODE-0005 · claude-sonnet-4-6 (high)
def merge_intervals(intervals):
    """
    Merge overlapping or touching intervals.

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

    Returns:
        Minimal list of non-overlapping [start, end] intervals sorted by start.
        Touching intervals (e.g. [1,2] and [2,3]) are merged into [1,3].
    """
    if not intervals:
        return []

    # Sort by start, then by end descending so nested intervals sort correctly
    sorted_intervals = sorted(intervals, key=lambda iv: (iv[0], iv[1]))

    merged = [list(sorted_intervals[0])]

    for current in sorted_intervals[1:]:
        last = merged[-1]
        # Merge if current start <= last end (overlap or touch)
        if current[0] <= last[1]:
            last[1] = max(last[1], current[1])
        else:
            merged.append(list(current))

    return merged