Le migliori 150 intervisteFacile

Intervallo minimo per includere ciascuna query

Guida dettagliata e implementazione Python per il problema "Intervallo minimo per includere ogni query".

Dichiarazione del problema

Facile

Ti viene fornito un array di intervalli di numeri interi 2D, dove intervalli[i] = [sinistra_i, destra_i] descrive l'intervallo i-esimo che inizia a sinistra_i e termina a destra_i (incluso). La dimensione di un intervallo è definita come right_i - left_i + 1. Viene inoltre fornita una query di array di numeri interi. La risposta alla j-esima query è la dimensione dell'intervallo più piccolo i tale che left_i <= query[j] <= right_i. Se tale intervallo non esiste, la risposta è -1.

Restituisce un array contenente le risposte alle domande.

Scrivi una funzione minInterval(intervals: List[List[int]], queries: List[int]) -> List[int].

Vincoli
  • 1 <= len(intervals) <= 10^5
  • 1 <= len(queries) <= 10^5
  • intervals[i].length == 2
  • 1 <= left_i <= right_i <= 10^7
  • 1 <= queries[j] <= 10^7

Esempi

Example 1
Input
intervals = [[1,4],[2,4],[3,6],[4,4]], queries = [2,3,4,5]
Output
[3,3,1,4]
Explanation

Smallest interval containing 2 is [2,4] (size 3). For 3 is [2,4] (size 3). For 4 is [4,4] (size 1). For 5 is [3,6] (size 4).

Example 2
Input
intervals = [[2,3],[2,5],[1,8],[20,25]], queries = [2,19,5,22]
Output
[2,-1,4,6]
Explanation

For 2: [2,3] (size 2). For 19: none (-1). For 5: [2,5] (size 4). For 22: [20,25] (size 6).

Need a Hint?
Prendi in considerazione l'utilizzo di strutture dati specifiche per gli intervalli come set o heap.
Edge Cases to Watch
  • Strutture di input vuote
  • Ingressi a elemento singolo
  • Grandi limiti numerici

Pronto a risolvere?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Apri nell'editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Risorse Python consigliate

Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.