TomoLink
CompaniesGoogleData Structures & AlgorithmsMinimum Interval to Include Each Query
DSA
HardArray

Minimum Interval to Include Each Query

arraybinary searchsweep line

Problem Statement

You are given a 2D integer array intervals , where intervals[i] = [left _i , right _i ] describes the i ^th interval starting at left _i and ending at right _i (inclusive) . The size of an interval is defined as the number of integers it contains, or more formally right _i - left _i + 1 .

You are also given an integer array queries . The answer to the j ^th query is the size of the smallest interval i such that left _i <= queries[j] <= right _i . If no such interval exists, the answer is -1 .

Return an array containing the answers to the queries .

Examples

Example 1
Input: intervals = [[1,4],[2,4],[3,6],[4,4]], queries = [2,3,4,5]
Output: [3,3,1,4]
The queries are processed as follows: - Query = 2: The interval [2,4] is the smallest interval containing 2. The answer is 4 - 2 + 1 = 3. - Query = 3: The interval [2,4] is the smallest interval containing 3. The answer is 4 - 2 + 1 = 3. - Query = 4: The interval [4,4] is the smallest interval containing 4. The answer is 4 - 4 + 1 = 1. - Query = 5: The interval [3,6] is the smallest interval containing 5. The answer is 6 - 3 + 1 = 4.
Example 2
Input: intervals = [[2,3],[2,5],[1,8],[20,25]], queries = [2,19,5,22]
Output: [2,-1,4,6]
The queries are processed as follows: - Query = 2: The interval [2,3] is the smallest interval containing 2. The answer is 3 - 2 + 1 = 2. - Query = 19: None of the intervals contain 19. The answer is -1. - Query = 5: The interval [2,5] is the smallest interval containing 5. The answer is 5 - 2 + 1 = 4. - Query = 22: The interval [20,25] is the smallest interval containing 22. The answer is 25 - 20 + 1 = 6.

Constraints

1 <= intervals.length <= 10 ^5
1 <= queries.length <= 10 ^5
intervals[i].length == 2
1 <= left _i <= right _i <= 10 ^7
1 <= queries[j] <= 10 ^7
😤
Hard
Difficulty
Topic Info
ModuleDSA
CategoryArray
Sub-topicBinary Search
Tags
arraybinary searchsweep linesortingheap (priority queue)
Navigation
Minimum Interval to Include Each Query [Hard] | Google Dsa | TomoLink