Search⌘ K
AI Features

Solution: Range Module

Explore how to create a Range Module data structure that manages half-open intervals. Learn to add, query, and remove ranges efficiently by merging or splitting intervals, applying binary search techniques, and maintaining non-overlapping intervals.

Statement

Design a Range Module data structure that effectively tracks ranges of numbers using half-open intervals and allows querying these ranges. A half-open interval [left,right)[left, right) includes all real numbers nn where leftn<rightleft\leq n <right.

Implement the RangeModule class with the following specifications:

  • Constructor(): Initializes a new instance of the data structure.

  • Add Range(): Adds the half-open interval [left, right)[left,~right) ...