https://codeforces.com/problemset/problem/1118/D2

也是很好想的一个二分啦。

验证m的可行性的时候,肯定是把最多咖啡因的咖啡先尽可能平均分到每一天,因为同一天内调换喝咖啡的顺序只会非增,而且平均分更优是显然的。

#include<bits/stdc++.h>
using namespace std;
#define ll long long int n,m;
int a[]; int ok(int mi){
ll sum=;
for(int i=;i<n;i++){
sum+=max(,a[i]-i/mi);
}
if(sum>=m)
return ;
else
return ;
} int binary(){
int l=,r=1e9,m;
while(){
m=(l+r)>>;
if(l==m){
if(ok(l)){
return l;
}
else if(ok(r)){
return r;
}
else{
return -;
}
}
if(ok(m)){
r=m;
}
else{
l=m+;
}
}
} int main(){
scanf("%d%d",&n,&m);
for(int i=;i<n;i++){
scanf("%d",&a[i]);
}
sort(a,a+n,greater<int>()); printf("%d\n",binary());
}

最新文章

  1. sublime2使用jshint
  2. 11g新特性-查询缓存(1)
  3. #1000 A + B (hihoCoder)
  4. js词法作用域规则
  5. Spring(3.2.3) - Beans(7): 延迟实例化
  6. Nginx - Additional Modules, SSL and Security
  7. [转]How to: Execute Oracle Stored Procedures Returning RefCursors
  8. 总结的一些封装好的javascript函数
  9. 数据库内存泄漏——A SQLiteConnection object for database &#39;/data/data/.../databases/....db&#39; was leaked!
  10. javascript 里找元素操作元素
  11. 抛弃jQuery,拥抱原生JavaScript
  12. 分酒问题(DFS解法)
  13. 1.3、Android Studio创建一个Android Library
  14. 【转】sentry 实时事件日志聚合平台
  15. 9.1 oop习题集合
  16. lua 中 socket 通信示例
  17. 练习七 Procedure中使用DDL
  18. Cocos Creator 加载和切换场景(官方文档摘录)
  19. 15.纯 CSS 创作条形图,不用任何图表库
  20. Hadoop日记Day4---去除HADOOP_HOME is deprecated

热门文章

  1. chrome插件网站
  2. javaproject积累——树形结构的操作
  3. js跳出循环的方法区别( break, continue, return ) 及 $.each 的(return true 和 return false)
  4. Gas Station,转化为求最大序列的解法,和更简单简单的Jump解法。——贪心、转化
  5. 利用卷积神经网络(CNN)构造社区问答系统
  6. 走入asp.net mvc不归路:[3]创建控制器
  7. wyh2000 and pupil
  8. 防sql注入 盲注等措施 ESAPI的使用
  9. Node中的promise简说及入门
  10. Safair css hack