Merge Intervals
medium⏱ 15 mintypescriptchallengesproblem-solving-intermediate-
Sample case — your program reads stdin and prints to stdout.
Given an array of intervals where intervals[i] = [start, end], merge all overlapping intervals and return non-overlapping intervals.
Algorithm: Sort by start time, then iterate and merge if current start ≤ previous end.
Example: [[1,3],[2,6],[8,10],[15,18]] → [[1,6],[8,10],[15,18]] (intervals [1,3] and [2,6] overlap)
Input format
Line 1: n (number of intervals). Next n lines: start end (space-separated).
Output format
Merged intervals, one per line as 'start end'.
Constraints
1 ≤ n ≤ 10⁴, 0 ≤ start ≤ end ≤ 10⁴