Menu
CoddyTech

Aggressive Cows

축사에는 일직선을 따라 축사 칸들이 있고, stalls[i]는 i번째 축사 칸의 위치입니다. 위치는 모두 서로 다르며 특별한 순서 없이 주어집니다. k마리의 소를 서로 다른 k개의 축사 칸에 넣어야 합니다. 소들은 가까이 서 있으면 싸우므로, 가장 가까운 두 소 사이의 거리를 가능한 한 크게 만들고 싶습니다.

소 두 마리 사이의 거리 중 가장 작은 값으로 가능한 최댓값을 반환하세요.

함수

aggressiveCows(stalls: integer-array, k: integer) → integer
stallsinteger-array
서로 다른 정차 위치를, 순서에 관계없이
kinteger
배치할 소의 수
반환값integer
두 소 사이의 가능한 최소 거리 중 가장 큰 값

제약 조건

  • 2 ≤ stalls.length ≤ 5000
  • 0 ≤ stalls[i] ≤ 109
  • stalls의 모든 위치는 서로 다릅니다.
  • 2 ≤ k ≤ stalls.length

예제

입력
stalls = [10, 1, 7, 4, 15]k = 3
출력
6
설명
1, 7, 15에 있는 소들은 각각 6과 8만큼 떨어져 있습니다. 간격이 7이면 조건을 만족하지 않습니다. 1 다음에 소를 10에 놓게 되고, 17 이상인 곳에는 외양간이 없습니다.
challenge icon

후속 질문

가판대들이 원 위에 놓여 있어서 순서상 마지막 가판대가 첫 번째 가판대의 이웃이기도 하다면 무엇이 달라질까요?

코드 초기화
def aggressiveCows(stalls, k):
    # 여기에 코드를 작성하세요

테스트 #1

테스트 #2

테스트 #3

인자들

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

예상 출력

6