河中跳房子(二分)

2021-08-22 08:38:10 字數 1062 閱讀 3875

每年奶牛們都要舉辦各種特殊版本的跳房子比賽,包括在河裡從乙個岩石跳到另乙個岩石。這項激動人心的活動在一條長長的筆直河道中進行,在起點和離起點l遠 (1 ≤ l≤ 1,000,000,000) 的終點處均有乙個岩石。在起點和終點之間,有n (0 ≤ n ≤ 50,000) 個岩石,每個岩石與起點的距離分別為di (0 < di

< l)。

在比賽過程中,奶牛輪流從起點出發,嘗試到達終點,每一步只能從乙個岩石跳到另乙個岩石。當然,實力不濟的奶牛是沒有辦法完成目標的。

農夫約翰為他的奶牛們感到自豪並且年年都**了這項比賽。但隨著時間的推移,看著其他農夫的膽小奶牛們在相距很近的岩石之間緩慢前行,他感到非常厭煩。他計畫移走一些岩石,使得從起點到終點的過程中,最短的跳躍距離最長。他可以移走除起點和終點外的至多m (0 ≤ m ≤ n) 個岩石。

請幫助約翰確定移走這些岩石後,最長可能的最短跳躍距離是多少?

輸入第一行包含三個整數l, n, m,相鄰兩個整數之間用單個空格隔開。

接下來n行,每行乙個整數,表示每個岩石與起點的距離。岩石按與起點距離從近到遠給出,且不會有兩個岩石出現在同乙個位置。

輸出乙個整數,最長可能的最短跳躍距離。

樣例輸入

25 5 2211

1417

21

樣例輸出

4
類似於前面的瘋牛。。。

找最短距離的最大值。

#include#include#include#include//#define p 5001 範圍

#define p 50010

using namespace std;

int ll,m,n;

int a[p];

int l,r,mid;

int check(int x)

else

}return ans;

}int main()

//sort(a+1,a+1+n);

a[n+1]=ll;

printf("%d\n",maxn());

}

河中跳房子

時間限制 1 sec 記憶體限制 128 mb 25 5 2211 1417 214 總時間限制 1000ms 記憶體限制 65536kb 描述每年奶牛們都要舉辦各種特殊版本的跳房子比賽,包括在河裡從乙個岩石跳到另乙個岩石。這項激動人心的活動在一條長長的筆直河道中進行,在起點和離起點l遠 1 l 1...

河中跳房子

時間限制 1000 ms 記憶體限制 65536 kb 提交數 485 通過數 227 每年奶牛們都要舉辦各種特殊版本的跳房子比賽,包括在河裡從乙個岩石跳到另乙個岩石。這項激動人心的活動在一條長長的筆直河道中進行,在起點和離起點l遠 1 l 1,000,000,000 的終點處均有乙個岩石。在起點和...

1247 河中跳房子

每年奶牛們都要舉辦各種特殊版本的跳房子比賽,包括在河裡從乙個岩石跳到另乙個岩石。這項激動人心的活動在一條長長的筆直河道中進行,在起點和離起點l遠 1 l 1,000,000,000 的終點處均有乙個岩石。在起點和終點之間,有n 0 n 50,000 個岩石,每個岩石與起點的距離分別為di 0 di ...