農夫約翰建造了一座有 n 間牛舍的小屋,牛舍排在一條直線上,第i間牛舍在 x[i] 的位置,但是約翰的 m 頭牛對小屋很不滿意,因此經常互相攻擊。約翰為了防止牛之間互相傷害,因此決定把每頭牛都放在離其它牛盡可能遠的牛舍。也就是要最大化最近的兩頭牛之間的距離。
牛們並不喜歡這種布局,而且幾頭牛放在乙個隔間裡,它們就要發生爭鬥。為了不讓牛互相傷害。john 決定自己給牛分配隔間,使任意兩頭牛之間的最小距離盡可能的大,那麼,這個最大的最小距離是多少呢?
典型的最大值最小(最小值最大)問題,一般用二分法求解。
#include
using
namespace std;
const
int maxn=
100000+10
;int x[maxn]
,n,m,ans;
bool
check
(int mid)
if(num>=m)
}return
false;}
intmain()
else
} cout<}
SSL ZYC 憤怒的牛
題目大意 farmer john建造了乙個有n個隔間的牛棚,這些隔間分布在一條直線上,座標是x1,xn 他的c頭牛不滿於隔間的位置分布,它們為牛棚裡其他的牛的存在而憤怒。為了防止牛之間的互相打鬥,farmer john想把這些牛安置在指定的隔間,所有牛中相鄰兩頭的最近距離越大越好。那麼,這個最大的最...
SSL ZYC 憤怒的牛
題目大意 farmer john建造了乙個有n個隔間的牛棚,這些隔間分布在一條直線上,座標是x1,xn 他的c頭牛不滿於隔間的位置分布,它們為牛棚裡其他的牛的存在而憤怒。為了防止牛之間的互相打鬥,farmer john想把這些牛安置在指定的隔間,所有牛中相鄰兩頭的最近距離越大越好。那麼,這個最大的最...
loj 10011憤怒的牛
題目描述 原題來自 usaco 2005 feb.gold 農夫約翰建造了一座有 nnn 間牛舍的小屋,牛舍排在一條直線上,第 iii 間牛舍在 xix ix i 的位置,但是約翰的 mmm 頭牛對小屋很不滿意,因此經常互相攻擊。約翰為了防止牛之間互相傷害,因此決定把每頭牛都放在離其它牛盡可能遠的牛...