有一堆牛要过河,河的长度是l,河中间有n个石头,牛只能踩着石头过河,问去掉m个石头后(去掉这m个石头的方式是随机的)的每种情况牛能走的石头间距最小值中,最大的那一个是多少(WTF!?)。
输入有多组实例,每组实例第一行输入l、n、m,下面n行输入石头距离起点的距离(起点为0)。
因为所求为最小间距,我们以间距为单位,通过二分法求间距,初试值left=0,right=l
那么这个间距可能不符合条件,
什么时候不符合条件呢?
1、为满足最小间距,拿走的石头数超过m,小于m也是可以的。
2、注意最后一跳的距离
3、注意搬掉石头的表示:last = heap[i]落地,last和上一个last之间为搬掉的石头