150 najlepszych wywiadówŁatwe

Minimalny interwał uwzględniania każdego zapytania

Szczegółowy przewodnik i implementacja Python dla problemu „Minimalny odstęp czasu obejmujący każde zapytanie”.

Oświadczenie o problemie

Łatwe

Dostajesz dwuwymiarową tablicę liczb całkowitych interwałów, gdzie interwały[i] = [lewy_i, prawy_i] opisuje i-ty przedział rozpoczynający się od lewego_i i kończący się na prawym_i (włącznie). Rozmiar interwału jest zdefiniowany jako prawy_i - lewy_i + 1. Udostępniane są także zapytania dotyczące tablicy liczb całkowitych. Odpowiedzią na j-te zapytanie jest rozmiar najmniejszego przedziału i taki, że lewy_i <= zapytania[j] <= prawy_i. Jeśli taki przedział nie istnieje, odpowiedź brzmi -1.

Zwróć tablicę zawierającą odpowiedzi na zapytania.

Napisz funkcję minInterval(intervals: List[List[int]], queries: List[int]) -> List[int].

Ograniczenia
  • 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

Przykłady

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?
Rozważ użycie struktur danych specyficznych dla interwałów, takich jak zestawy lub sterty.
Edge Cases to Watch
  • Puste struktury wejściowe
  • Wejścia jednoelementowe
  • Duże granice liczbowe

Gotowy do rozwiązania?

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

Otwórz w Edytorze
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

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.