逃跑大作战--(二分法求最小化最大值)

本文介绍了一道编程题目,天才威被熊大和熊二追逐,需要在限定次数内跳过河上的石头,以避免落入水中。题目要求通过二分法找出在最多跳跃次数内天才威可能跳过的最远距离。示例输入和输出展示了问题的具体场景和解决方案。
摘要由CSDN通过智能技术生成

标题逃跑大作战

时间限制: 1Sec 内存限制: 128MB

题目描述
狗熊岭来了一个新的天才威博士,这天天才威被熊大和熊二追逐到一条河边,这条河的宽度是L(1<=L<=1000000000)。河上有n(0<= n <= 500000)块石头从河的一边到另一边排成一条直线。
天才威只能跳过河,但它可以跳到石头上。如果掉到河里,就会被河里的鳄鱼吃掉。要求天才威最多跳m次(1<= m <= n+1)。现在请你预测一下天才威至少要跳跃的最长距离。

输入
输入包含几个案例。每种情况的第一行包含三个正整数L、n和m。
然后是n行。每一块代表从岸边开始到第n块石头的距离,两块石头出现在一个地方是不可能的。

输出
对于每种情况,输出一个整数,代表天才威至少要跳跃的最长距离。

样例输入
6 1 2
2
25 3 3
11
2
18
样例输出
4
11

//二分法求最大化最小值与最小化最大值 
#include <iostream>
#include <algorithm>
#include <cstring>
#define maxn 500005 
using namespace std;
typedef long long ll;
ll L,n,m;
ll d[maxn];    //保存每个石头距离岸边的距离 
bool judge(int mid)
{
   
	int start=0,x=0,i;
	for(i=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值