博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codevs 1725 探险 (二分)
阅读量:4561 次
发布时间:2019-06-08

本文共 807 字,大约阅读时间需要 2 分钟。

/*二分答案 这个题目要求“体力和最小的那个小组的所有人的体力和尽量大” 很明显我们二分最小体力 如果合法 逐渐放大 但是这里我们二分的是最小而不是最大所以累加的体力>=ans时 跳过当前体力i (可以认为把他归给了上一组)累加和=0 继续分组 */#include
#include
#include
#define ll long long#define maxn 30010#define inf 1000000000using namespace std;ll n,m,ans,a[maxn];bool can(ll x){ ll tot=0,s=0; for(int i=1;i<=n;i++) if(s+a[i]
=m)return 1; else return 0;}int main(){ scanf("%lld%lld",&n,&m); for(int i=1;i<=n;i++) scanf("%lld",&a[i]); ll l=0,r=inf; while(l<=r) { ll mid=(l+r)/2; if(can(mid)) { l=mid+1; ans=mid; } else r=mid-1; } printf("%lld\n",ans); return 0;}

 

转载于:https://www.cnblogs.com/yanlifneg/p/5546142.html

你可能感兴趣的文章
11、求二进制中1的个数
查看>>
【nodejs】让nodejs像后端mvc框架(asp.net mvc)一样处理请求--请求处理结果适配篇(7/8)...
查看>>
CodeForces 731A Night at the Museum
查看>>
MySQL 删除数据库
查看>>
JavaScript 字符串(String) 对象
查看>>
How to use VisualSVN Server and TortoiseSVN to host your codes and control your codes' version
查看>>
微信小程序picker组件 - 省市二级联动
查看>>
Dynamics CRM 给视图配置安全角色
查看>>
Eclipse修改已存在的SVN地址
查看>>
(转)使用 python Matplotlib 库绘图
查看>>
进程/线程切换原则
查看>>
正则表达式语法
查看>>
20165301 2017-2018-2 《Java程序设计》第四周学习总结
查看>>
Vue的简单入门
查看>>
urllib 中的异常处理
查看>>
通过SQL Server的扩展事件来跟踪SQL语句在运行时,时间都消耗到哪儿了?
查看>>
WIFI密码破解全攻略
查看>>
gulp
查看>>
pgsql查询优化之模糊查询
查看>>
不变模式
查看>>