Programowanie konkurencyjneŁatwe

Najbliższa para

Szczegółowy przewodnik i implementacja Python dla problemu „najbliższej pary”.

Oświadczenie o problemie

Łatwe

Napisz funkcję closest_pair(arr), która pobiera nieposortowaną tablicę liczb całkowitych arr i zwraca krotkę dwóch liczb całkowitych (x, y) z tablicy, które mają minimalną różnicę bezwzględną. Zwrócona krotka musi być posortowana w taki sposób, że x <= y. Jeśli istnieje wiele par o tej samej minimalnej różnicy, zwróć tę z mniejszą wartością x (a jeśli są takie same, mniejszą wartością y).

Ograniczenia
  • 2 <= len(arr) <= 10^5
  • -10^9 <= arr[i] <= 10^9

Przykłady

Example 1
Input
closest_pair([4, 9, 1, 32, 13])
Output
(1, 4)
Explanation

The difference between 1 and 4 is 3, which is the minimum difference possible between any two elements in the array.

Example 2
Input
closest_pair([12, 15, 17, 20, 25])
Output
(15, 17)
Explanation

The difference between 15 and 17 is 2, which is the minimum difference possible.

Need a Hint?
Rozważ użycie struktur danych specyficznych dla wyszukiwania i sortowania, 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.