Given an array of meeting time intervals where intervals[i] = [start_i, end_i], return the minimum number of conference rooms required.
Two meetings overlap if one starts before the other ends. Meetings that share only an endpoint (e.g., [0,10] and [10,20]) do not overlap and can share a room.
Input: intervals = [[0, 30], [5, 10], [15, 20]] Output: 2 Explanation: Meeting [0,30] runs the entire time. [5,10] and [15,20] both overlap with it, but not each other, so 2 rooms suffice.
Input: intervals = [[7, 10], [2, 4]] Output: 1 Explanation: The two meetings don't overlap, so one room handles both.
1 <= intervals.length <= 10^40 <= start_i < end_i <= 10^6intervals = [[0, 30], [5, 10], [15, 20]]