
1.当起始能量E大于最大建筑高度1e5 时,E的能量在整个条约过程中全程递增,则大于E的初始能量也必然成立(满足二段性)。故最小初始能量范围为[0,1e5](确定了二分范围)。
2.满足二分条件,可用二分!!!
- //二分
- /*二段性:当起始能量E满足机器人跳跃过程E!=0的条件时,
- 比初始值E大的值也必然成立*/
- #include
- #include
- using namespace std;
- const int N=1e5+10;
- int h[N],n;
-
- bool check(int e)
- {
- for(int i=1;i<=n;i++){//遍历机器人到达每座建筑上的能量E
- e=2*e-h[i];
- if(e<0)return false;//在到达最后的第n座建筑前<=0,必然会出现负,说明e取小了
- if(e>=1e5)return true;//如果到达某座建筑上时的能量大于等于建筑高度最大值,
- //那机器人在后面的跳跃过程中必然是递增的,不可能为0
- }
- return true;
- }
-
- int main()
- {
- cin>>n;
- for(int i=1;i<=n;i++)scanf("%d",&h[i]);
- int L=1,R=1e5;
- while(L
- int mid=L+R>>1;//二分
- if(check(mid))R=mid;
- else L=mid+1;
- }
- cout<
- }
-
相关阅读:
rpc的正确打开方式|读懂Go原生net/rpc包
SpringBoot整合Javamail实现邮件发送
Trino 387 JVM 配置详解
化妆品行业分销渠道管理系统加强企业渠道管控能力,赋能化妆品渠道数字化升级
给面试加点硬菜:延迟任务场景,该如何提高吞吐量和时效性!
Electron 30.0.0 发布,升级 Node 和 V8 引擎
Qt 中大尺寸图片的处理
java swing(GUI) MySQL实现的飞机票预定系统源码带视频运行教程
IDEA上配置mysql
Hash、ContentHash、ChunkHash
-
原文地址:https://blog.csdn.net/asdfghrfh/article/details/134042921