7月18日刷题记录 二分答案跳石头游戏Getting
通过数:1
明天就要暑假编程集训啦~莫名开心
今天做出了一道 二分答案题(好艰辛鸭)
1049: B13-二分-跳石头游戏(二分答案)
提交: 30 解决: 12
[提交] [状态] [讨论版] [命题人:外部导入]
题目描述


样例输入
25 5 2
2
14
11
21
17
样例输出
4
提示
参考check函数:
bool check(int x)
/*
1049: B13-二分-跳石头游戏(二分答案)
时间限制: 5 Sec 内存限制: 256 MB
提交: 26 解决: 11
[提交] [状态] [讨论版] [命题人:外部导入]
题目描述 样例输入 25 5 2
2
14
11
21
17 样例输出 4 提示 参考check函数: bool check(int x)
{
int tot=0;
if(tot>m)return 0;
int last=0;
for(int i=1;i<=n;i++)
if(a[i]-a[last]<x)
{
tot++;
if(tot>m)return false;
}
else last=i;
return true;
} 来源/分类
B13-二分 [提交] [状态]
*/
#include<bits/stdc++.h>
using namespace std;
int L,n,m,a[];
bool check(int x)
{
int tot=;
int last=;
for(int i=;i<=n;i++)
if(a[i]-a[last]<x)
tot++;
else last=i;
if(tot>m)return false;
return true;
}
int main(){
cin>>L>>n>>m;
for(int i=;i<=n;i++)
scanf("%d",&a[i]);
sort(a+,a+n+);
a[n+]=L;
int l=,r=L+,ans;//那个+1 数据有些坑。。。
while(l<r){ int mid=(l+r)>>;
// cout<<l<<" "<<r<<" "<<mid<<" "<<check(mid)<<endl;
if(check(mid)){
ans=mid;
l=mid+;
}
else
r=mid; }
cout<<ans;
return ;
}
启示:①要仔细读题和样例解释
②在调试代码的过程中如果一眼找不出错误来,当然也不知道程序运行过程中变量数值的变化情况 ,就可以在程序运行时打印变量值←好方法!
还是继续加油吧886 23:45 Program
7月18日刷题记录 二分答案跳石头游戏Getting的更多相关文章
- 7月17日刷题记录 分治Getting!循环比赛日程表
通过数:1 ┭┮﹏┭┮ qdoj.xyz 1053 分治-循环比赛日程表 其实今天晚上留给编程的时间并不多,做出一道... 不过收获还是非常大的 毕竟本人从来没有学习过分治算法,今天竟然攻克了我人生中 ...
- bzoj4590: [Shoi2015]自动刷题机(二分答案)
4590: [Shoi2015]自动刷题机 题目:传送门 题解: 很明显的一道二分题. 对于二分性的判断:如果n越大,那么AC的题就越少,n越小,AC的题就越多,那么最大最小值都满足单调性,直接瞎搞. ...
- luogu P4343 [SHOI2015]自动刷题机 |二分答案
题目描述 曾经发明了信号增幅仪的发明家 SHTSC 又公开了他的新发明:自动刷题机--一种可以自动 AC 题目的神秘装置. 自动刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写程序. ...
- BZOJ 4590 [Shoi2015]自动刷题机 ——二分答案
二分答案水题. #include <cstdio> #include <cstring> #include <iostream> #include <algo ...
- 3月28日考试 题解(二分答案+树形DP+数学(高精))
前言:考试挂了很多分,难受…… --------------------- T1:防御 题意简述:给一条长度为$n$的序列,第$i$个数的值为$a[i]$.现让你将序列分成$m$段,且让和最小的一段尽 ...
- 优步UBER司机全国各地奖励政策汇总 (4月18日-4月24日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 全国Uber优步司机奖励政策 (1月18日-1月24日)
本周已经公开奖励整的城市有:北 京.成 都.重 庆.上 海.深 圳.长 沙.佛 山.广 州.苏 州.杭 州.南 京.宁 波.青 岛.天 津.西 安.武 汉.厦 门,可按CTRL+F,搜城市名快速查找. ...
- 北京Uber优步司机奖励政策(10月12日~10月18日)
用户组:优步北京人民优步A组(适用于10月12日-10月18日) 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万 ...
- 天津Uber优步司机奖励政策(1月18日~1月24日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
随机推荐
- win32 htmlayout dom操作demo
之前两篇关于win32 htmlayout博文,记载了一个实现了简单的点击按钮弹出新窗口的demo,之后实践中发现,图形界面开发,最重要的还是要实现响应用户操作,改变原有界面的功能.比如说,界面上有一 ...
- css3 pointer-events 让对象如透明般直接响应下层对象的鼠标事件
引用:http://www.css88.com/book/css/properties/user-interface/pointer-events.htm 语法: pointer-events:aut ...
- 笔记:认识.NET平台
认识.NET平台先了解一堆技术术语和缩写 http://www.cnblogs.com/dbycl/p/6419456.html 天生不跨平台的.NET Framework 2.大家都来开发新语言 3 ...
- QThread多线程编程经典案例分析(三种方法,解释了为什么使用moveToThread的根本原因,即为了避免调用QThread::exec() )
传统的图形界面应用程序都只有一个线程执行,并且一次执行一个操作.如果用户调用一个比较耗时的操作,就会冻结界面响应. 一个解决方法是按照事件处理的思路: 调用 Void QApplication::pr ...
- java-mysql(1)
用java写过不少单侧,用到的数据存储也是用xml或者直接文件,但是关于数据库这块很少用到,最近就学习了下java链接mysql数据库. 第一:创建一个测试用的数据库 Welcome to the M ...
- 获取原生DOM,diy脚手架,vue-clide使用,element-ui的使用
一.获取原生DOM的方式 给标签或者属性添加ref属性 //1.添加属性 <div ref='shy'><div> <Home ref='home'></Ho ...
- vue数据加载等待组件
关于loading组件的. loading.vue <template> <div class="loading"> <div class=" ...
- 使用Core Audio实现VoIP通用音频模块
最近一直在做iOS音频技术相关的项目,由于单项直播SDK,互动直播SDK(iOS/Mac),短视频SDK,都会用到音频技术,因此在这里收集三个SDK的音频技术需求,开发一个通用的音频模块用于三个SDK ...
- Flume 简介及基本使用
一.Flume简介 Apache Flume是一个分布式,高可用的数据收集系统.它可以从不同的数据源收集数据,经过聚合后发送到存储系统中,通常用于日志数据的收集.Flume 分为 NG 和 OG (1 ...
- JavaWeb入门_模仿天猫整站Tmall_JavaEE实践项目
Tmall_JavaEE 技术栈 Servlet + Jsp + Tomcat , 是Java Web入门非常好的练手项目 效果展示: 模仿天猫前台 模仿天猫后台 项目简介 关联项目 github - ...
