Menu
CoddyTech

Aggressive Cows

Um celeiro tem baias ao longo de uma linha reta, e stalls[i] é a posição da baia i. Todas as posições são diferentes e não estão em nenhuma ordem específica. Você deve colocar k vacas em k baias diferentes, e as vacas brigam quando ficam perto umas das outras, então você quer que as duas vacas mais próximas fiquem o mais distantes possível.

Retorne o maior valor possível da menor distância entre quaisquer duas vacas.

Função

aggressiveCows(stalls: integer-array, k: integer) → integer
stallsinteger-array
as posições distintas dos obstáculos, em qualquer ordem
kinteger
o número de vacas a colocar
Retornainteger
a maior menor distância possível entre duas vacas

Restrições

  • 2 ≤ stalls.length ≤ 5000
  • 0 ≤ stalls[i] ≤ 109
  • Todas as posições em stalls são distintas.
  • 2 ≤ k ≤ stalls.length

Exemplos

Entrada
stalls = [10, 1, 7, 4, 15]k = 3
Saída
6
Explicação
As vacas nas posições 1, 7 e 15 ficam a 6 e 8 de distância. Uma distância de 7 não funciona: depois da posição 1, a próxima vaca vai para a posição 10, e não há nenhum estábulo na posição 17 ou além.
challenge icon

Para ir além

O que muda se as barracas estiverem dispostas em um círculo, de modo que a última barraca na sequência também seja vizinha da primeira?

Redefinir código
def aggressiveCows(stalls, k):
    # Escreva o código aqui

Teste #1

Teste #2

Teste #3

Argumentos

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

Saída Esperada

6