Menu
CoddyTech

Aggressive Cows

Stodoła ma boksy rozmieszczone wzdłuż jednej prostej, a stalls[i] to pozycja boksu i. Wszystkie pozycje są różne i nie są uporządkowane w szczególny sposób. Musisz umieścić k krów w k różnych boksach. Krowy walczą, gdy stoją blisko siebie, dlatego chcesz, aby dwie najbliżej siebie stojące krowy były jak najdalej od siebie.

Zwróć największą możliwą wartość najmniejszej odległości między dowolnymi dwiema krowami.

Funkcja

aggressiveCows(stalls: integer-array, k: integer) → integer
stallsinteger-array
różne pozycje postojowe, w dowolnej kolejności
kinteger
liczba krów do umieszczenia
Zwracainteger
największa możliwa najmniejsza odległość między dwiema krowami

Ograniczenia

  • 2 ≤ stalls.length ≤ 5000
  • 0 ≤ stalls[i] ≤ 109
  • Wszystkie pozycje w stalls są różne.
  • 2 ≤ k ≤ stalls.length

Przykłady

Wejście
stalls = [10, 1, 7, 4, 15]k = 3
Wyjście
6
Wyjaśnienie
Krowy na pozycjach 1, 7 i 15 stoją w odległości 6 i 8 od siebie. Odległość 7 nie spełnia warunku: po krowie na pozycji 1 następna trafia na pozycję 10, a żadna zagroda nie znajduje się na pozycji 17 ani dalej.
challenge icon

Pytanie dodatkowe

Co się zmienia, jeśli stoiska stoją na okręgu, tak że ostatnie stoisko w kolejności jest również sąsiadem pierwszego?

Zresetuj kod
def aggressiveCows(stalls, k):
    # Wpisz kod tutaj

Test #1

Test #2

Test #3

Argumenty

stalls = [10, 1, 7, 4, 15]
k = 3

Oczekiwany wynik

6