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