Approach: Treat starts and ends as events. Count running meetings.
Create events: (time, +1 for start, -1 for end).
Sort by time. If tie, process end before start (a room freed is reusable).
Scan events, track running count.
Answer is maximum count seen. This counts how many meetings are happening simultaneously at each moment. The trick: processing end before start handles back-to-back meetings correctly. If meeting A ends at time and meeting B starts at time , they can share a room.