当前位置: 首页 > news >正文

Solutions P2678 [NOIP 2015 提高组] 跳石头

思路

两次二分,第一次二分最短的跳跃距离,第二次二分答案最短跳跃距离的最大值,两个值显然具有单调性并且题目保证不会出现两个一样的。但仔细思考之后可以只要一次二分+贪心的check就可以了。如果最短距离设为 x可行 \(移走 <= M 块\) ,那么设为比 x小的值一定也可行显然有单调性二分即可,贪心思路就是从左到右扫描,尽量保留石头,只移走那些导致跳跃距离不够的石头。两次二分时间复杂度显然 \(\Theta(n \log L)\) 而贪心的时间复杂度为 \(\Theta(n \log L)\) 但是两次二分常数显然更大。

实现

check大概就是这个样子,从左到右扫描,尽量保留石头,只移走那些导致跳跃距离不够的石头。

auto ok = [&](ll X) -> bool {ll removed=0;  ll prev=0;     for (ll i=0;i<n;i++) {if (Dist[i] - prev < X) {removed++;} else {prev = Dist[i];}}if (l - prev < X) {if (removed < m) {removed++; } else {return false;  }}return removed <= m;};

AClink。

ACcode

#include<bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define uint unsigned int
#define i128 __int128
#define ld long double
#define fir first
#define sec second
#define pii pair<int,int>
#define pll pair<ll,ll>
#define ls(x) (x<<1)
#define rs(x) (x<<1|1)
#define lowbit(x) (x&-x)
using namespace std;
const int MOD=998244353;
const int MOD1=1e9+7;
//char ibuf[1<<25],*p1=buf,*p2=buf;
mt19937 mrand(random_device{}());
int rnd(int x){ return mrand() % x;}
ll qpow(ll a,ll b){ll res=1;while(b){if(b&1)res=res*a%MOD;a=a*a%MOD,b>>=1;}return res;}
ll gcd(ll a,ll b){ return b?gcd(b,a%b):a;}  
ll lcm(ll a,ll b){ return a/gcd(a,b)*b;}
//C++ 17 -O2
//By MaZhaoze
int main(){ios::sync_with_stdio(0);cin.tie(0);ll l,n,m;cin>>l>>n>>m;vector<ll> Dist(n);for(auto &x:Dist) cin>>x;// sort(Dist.begin(),Dist.end());auto ok = [&](ll X) -> bool {ll removed=0;  ll prev=0;     for (ll i=0;i<n;i++) {if (Dist[i] - prev < X) {removed++;} else {prev = Dist[i];}}if (l - prev < X) {if (removed < m) {removed++; } else {return false;  }}return removed <= m;};ll L=1,r=1e9+7,ans=0;while(L<=r){ll mid=(L+r)/2;if(ok(mid)){ans=mid;L=mid+1;}else{r=mid-1;}}cout<<ans;return 0;
}
http://www.jsqmd.com/news/417413/

相关文章:

  • 聊聊湖南有机肥生产线全套设备价格多少、怎么选购更合适? - 工业设备
  • pg_dump/pg_dumpall/pgbackrest
  • RWS 前置驱动,临研通解锁慢病真实价值与研发定位 - 速递信息
  • 2026 厂房机电安装工程专业公司推荐 设计施工一体化承包商参考_ - 品牌2025
  • 2026年2月上海搬家服务公司最新推荐,本地靠谱搬家公司精选 - 品牌鉴赏师
  • 说说高频电火花,汉霸数控靠谱吗,在上海地区口碑咋样 - mypinpai
  • 模拟器市场2026新看点:优质厂家亮点解析,知名的模拟器厂家口碑排行优质品牌选购指南 - 品牌推荐师
  • 2026年 铝合金桥架型材厂家推荐排行榜,铝合金大跨距桥架、不锈钢线槽、热镀锌桥架及各类工业型材源头实力精选 - 品牌企业推荐师(官方)
  • 2026厂房恒温恒湿工程哪家好 靠谱承包商与设计施工一体化企业推荐 - 品牌2025
  • 2026驻马店时尚全屋定制品牌推荐,哪家比较靠谱 - 工业品网
  • Linux Shell 到底是什么?从 0 讲清命令解释器本质
  • 细聊青岛新顺办公家具厂家,究竟靠不靠谱,口碑怎么样? - 工业设备
  • 2026年推荐MRO工业品一站式采购专业公司,选购要点有哪些 - 工业推荐榜
  • 解读泰艺包装特色,金华地区首饰包装如何选择 - 工业品网
  • 聊聊免清洗油烟机合作案例多的加工厂,哪家性价比更高 - 工业品牌热点
  • 昆仑保险深耕齐鲁基层 济南新泺北健康之家开启便民健康保障新征程 - 速递信息
  • 使用插件pg_stat_monitor监控PG数据库性能
  • 导师严选 8个AI论文平台:专科生毕业论文+开题报告全攻略
  • 聊聊上海靠谱的万国府优质楼盘房产服务商有哪些 - myqiye
  • 论文写不动?AI论文工具千笔AI VS 学术猹,专科生专属神器!
  • 论文省心了!9个降AIGC软件测评:本科生降AI率必备指南
  • AI大模型就业风口已来!掌握这些技能,月入过万不是梦!AI大模型的就业岗位及薪资(附学习指南)
  • 【重点汇总-项目规划绩效域】信息系统项目管理师
  • 破解包装印刷掉铝痛点:汇华三核防掉铝方法论如何实现零掉铝? - 速递信息
  • 咸阳白灰源头厂家靠谱吗,选择时有啥要点? - 工业推荐榜
  • 2026 最全的“基础 - 中级 - 高级”Java面试题库:jvm 调优 + 高并发 + 算法 + 网络 + 数据库 + 设计模式
  • 兰士顿AirWave Pro2女神节限定款青柚红上新 - 品牌企业推荐师(官方)
  • 使用插件pg_dirtyread闪回查询PG数据库
  • 网络安全学习路线:渗透测试基础与Metasploit工具详解
  • 探讨企业外贸推广服务哪个口碑好,专业解读不容错过 - myqiye