测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A5572. 「一本通 1.2 例 1」愤怒的牛

编程题 普及/提高-
知识点

题目描述

**原题来自:USACO 2005 Feb. Gold**

农夫约翰建造了一座有 $n$ 间牛舍的小屋,牛舍排在一条直线上,第 $i$ 间牛舍在 $x_i$ 的位置,但是约翰的 $m$ 头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其它牛尽可能远的牛舍。也就是要最大化最近的两头牛之间的距离。

牛们并不喜欢这种布局,而且几头牛放在一个隔间里,它们就要发生争斗。为了不让牛互相伤害。John 决定自己给牛分配隔间,使任意两头牛之间的最小距离尽可能的大,那么,这个最大的最小距离是多少呢?

输入格式

第一行用空格分隔的两个整数 $n$ 和 $m$;

接下来 $n$ 行,第 $i$ 行一个整数,表示位置 $x_i$。

输出格式

输出仅一个整数,表示最大的最小距离值。

输入输出样例

输入 #1
5 3
1
2
8
4
9
输出 #1
3

说明/提示

$2 \leq n \leq 10^5$, $0 \leq x_i \leq 10^9$, $2\leq m \leq n$。
上一题 去做题 下一题