You are building a scheduling system for a company that needs to allocate conference rooms efficiently. Given a collection of meeting time intervals where each interval is represented as [start, end], determine the minimum number of conference rooms required to accommodate all meetings without any scheduling conflicts.
Each meeting occupies a room from its start time (inclusive) to its end time (exclusive). For example, a meeting from [0, 30] means the room is occupied from time 0 up to (but not including) time 30.
Calculate the minimum number of rooms needed so that no two meetings overlap in the same room
Handle empty input appropriately (return 0 for no meetings)
Meetings with the same start and end times are considered overlapping
A meeting ending at time T does not conflict with a meeting starting at time T
0 ≤ meetings.length ≤ 10,000
Each meeting interval is represented as [start, end] where 0 ≤ start < end ≤ 1,000,000
Target time complexity: O(n log n) where n is the number of meetings
Target space complexity: O(n)
Example 1:
` Input: [[0, 30], [5, 10], [15, 20]] Output: 2 Explanation:
Input: [[7, 10], [2, 4]] Output: 1 Explanation: The meetings don't overlap, so 1 room is sufficient.
Input: [[1, 10], [2, 6], [3, 5], [7, 9]] Output: 3 Explanation: At time 3, three meetings are happening simultaneously: [1,10], [2,6], and [3,5].