Solución
solution.tsTypeScript
import heapq
def intervalMinSize(intervals: list[list[int]], queries: list[int]) -> list[int]:
intervals.sort()
sorted_queries: list[tuple[int, int]] = \
sorted((q, i) for i, q in enumerate(queries))
ans: list[int] = [-1] * len(queries)
min_heap: list[tuple[int, int]] = []
i : int = 0
n : int = len(intervals)
for q_val, q_idx in sorted_queries:
while i < n and intervals[i][0] <= q_val:
l : int = intervals[i][0]
r : int = intervals[i][1]
size: int = r - ~-l
heapq.heappush(min_heap, (size, r))
i += 1
while min_heap and min_heap[0][1] < q_val:
heapq.heappop(min_heap)
if min_heap:
ans[q_idx] = min_heap[0][0]
return ans0respuestas