Skip to main content
LeetCode 759, Hard. Topics: Array, Sorting, Sweep Line, Heap (Priority Queue). View on LeetCode. Generate this problem as a practice environment: tested reference solution, 13 parametrized pytest cases, and a playground notebook:

Problem

We are given a list schedule of employees, which represents the working time for each employee. Each employee has a list of non-overlapping Intervals, and these intervals are in sorted order. Return the list of finite intervals representing common, positive-length free time for all employees, also in sorted order. (Even though we are representing Intervals in the form [x, y], the objects inside are Intervals, not lists or arrays. For example, schedule[0][0].start = 1, schedule[0][0].end = 2, and schedule[0][0][0] is not defined). Also, we do not include intervals like [5, 5] in our answer, as they have zero length.

Examples

Constraints

  • 1 <= schedule.length, schedule[i].length <= 50
  • 0 <= schedule[i].start < schedule[i].end <= 10^8

Solution

Reference implementation from solution.py on GitHub, full suite in test_solution.py:

Complexity

Tags

Grind, NeetCode All.
Last modified on August 25, 2026