好恶心。。

二分上界到100000LL*1000000000LL  %_%

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL;
int n,m;LL a[];
int check(LL mid)
{
LL sum=,ss=;
for(int i=;i<=n;i++)
{
sum+=a[i];
if(sum>=mid){sum=;ss++;}
if(sum<)sum=;
}
if(ss==m)return ;
if(ss<m)return ;
else return ;
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)scanf("%lld",&a[i]); LL l,r; LL mmin=-;
l=,r=100000LL*1000000000LL;
while(l<=r)
{
LL mid=(l+r)/;
int d=check(mid);
if(d==)r=mid-;
else if(d==)l=mid+;
else
{
r=mid-;
mmin=mid;
}
} LL mmax=-;
l=,r=100000LL*1000000000LL;
while(l<=r)
{
LL mid=(l+r)/;
int d=check(mid);
if(d==)r=mid-;
else if(d==)l=mid+;
else
{
l=mid+;
mmax=mid;
}
} if(mmin==-)printf("-1\n");
else printf("%lld %lld\n",mmin,mmax);
return ;
}

最新文章

  1. C语言中断言ASSERT
  2. GBDT(Gradient Boosting Decision Tree)算法&amp;协同过滤算法
  3. (转)基于即时通信和LBS技术的位置感知服务(一):提出问题及解决方案
  4. android服务Service(上)- IntentService
  5. 七日筑基——C#第二天
  6. Android 的Google+平台
  7. A Proof of Stake Design Philosophy - PoS权益证明设计理念
  8. python的exec
  9. Linux基础 - 系统优化及常用命令
  10. 在线制作微信跳转浏览器下载app/打开指定页面源码
  11. Java Web服务器的联机交易
  12. Jenkins可用环境变量列表以及环境变量的使用(Shell/Command/Maven/Ant)
  13. 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。
  14. button theme
  15. angularjs启动项目报ERROR in AppModule is not an NgModule解决方法
  16. URL和URI的不同
  17. angular把echarts封装为指令(配合requirejs)
  18. JavaScript中定义对象的四种方式
  19. java开发工具之myeclipse调优
  20. 【Vim】Vim学习

热门文章

  1. MFC窗体大小变化
  2. CAD制作简单动画
  3. java基础学习之垃圾回收机制
  4. 脚手架工具搭建VUE应用
  5. Analysis of container and Injection in Java, their history and future.
  6. 【转载】tomcat部署web项目的3中方法
  7. Chrome升级后打开新的标签页变样了……
  8. Linux查看Port状态命令、密钥SSH、会话同步
  9. BZOJ 1832、1787 洛谷 4281 [AHOI2008]紧急集合
  10. Spring核心技术(五)——Spring中Bean的作用域