Consolidated On-Call Rotations
Learn this problemProblem statement
You are given on-call rotations. Each rotation contains a person name, a start time, and an end time, and represents the half-open interval [start, end).
Produce the consolidated on-call schedule. Each output segment must be a maximal contiguous time range during which the set of people on call does not change. Omit gaps where no one is on call.
Input rotations are provided as strings formatted "name,start,end". Return strings formatted "start,end,name1,name2,...", with names in lexicographic order inside each segment.
Function
getOnCallSchedule(rotations: String[]) → String[]Complete getOnCallSchedule.
String rotations[n]: on-call intervals
Returns
String[]: consolidated schedule segments sorted by start time.
Examples
Example 1
rotations = ["A,10,50","B,20,60","C,30,40","D,30,40"]return = ["10,20,A","20,30,A,B","30,40,A,B,C,D","40,50,A,B","50,60,B"]The original interview report presents this example as input and output tables.
Input rotations
| name | start | end |
|---|---|---|
A | 10 | 50 |
B | 20 | 60 |
C | 30 | 40 |
D | 30 | 40 |
Consolidated schedule
| start | end | names |
|---|---|---|
10 | 20 | A |
20 | 30 | A, B |
30 | 40 | A, B, C, D |
40 | 50 | A, B |
50 | 60 | B |
The active set changes at times 10, 20, 30, 40, 50, and 60.
Example 2
rotations = ["Nina,1,3","Omar,5,7"]return = ["1,3,Nina","5,7,Omar"]The gap from 3 to 5 has no on-call person and is omitted.
Constraints
- 0 <= rotations.length <= 10^5
- 0 <= start < end <= 10^9
- Names contain no commas.
More Google problems
- Deduplicate Logs: Keep FirstONSITE INTERVIEW · Seen Jul 2026
- Deduplicate Logs: Keep LatestONSITE INTERVIEW · Seen Jul 2026
- Find a Template Across Binary-Tree LeavesONSITE INTERVIEW · Seen Jul 2026
- Maximum Programmer-Problem MatchingONSITE INTERVIEW · Seen Jul 2026
- Minimum Direction ViolationsONSITE INTERVIEW · Seen Jul 2026
- Stream Latest Log VersionsONSITE INTERVIEW · Seen Jul 2026
- Stream Unique Logs in Timestamp OrderONSITE INTERVIEW · Seen Jul 2026
- Top-K IP Addresses from File RecordsONSITE INTERVIEW · Seen Jul 2026