BZOJ4590: [Shoi2015]自动刷题机
来源:互联网 发布:淘宝nike专卖店 编辑:程序博客网 时间:2024/06/09 21:37
BZOJ4590
我CTM-1打成-2!!?
判无解的时候都要
【代码】
#include <cstdio>#include <iostream>#include <algorithm>#include <cstring>#include <cmath>#include <queue>#define N 100005#define Mod 1000000007#define INF 0x7fffffffusing namespace std;typedef long long ll;typedef unsigned long long ull;const ull base=31;ll read(){ ll x=0,f=1;char ch=getchar(); while(!isdigit(ch)){if(ch=='-') f=-1;ch=getchar();} while(isdigit(ch)){x=(x<<1)+(x<<3)+ch-'0';ch=getchar();} return x*f;}int n,m;int a[N]; ll L,R,Mx,Amn,Amx;int Check(ll mid){ ll now=0;int sum=0; for(int i=1;i<=n;i++) { now+=a[i];now=max(now,1LL*0); if(now>=mid) sum++,now=0; } return sum;} int main(){ n=read();m=read(); for(int i=1;i<=n;i++) a[i]=read(),R+=(a[i]>0)?a[i]:0; Mx=R;L=1; while(L<=R) { ll mid=L+R>>1; if(Check(mid)>=m) Amx=mid,L=mid+1; else R=mid-1; } R=Mx,L=1; while(L<=R) { ll mid=L+R>>1; if(Check(mid)<=m) Amn=mid,R=mid-1; else L=mid+1; } if(Check(Amn)!=m||Check(Amx)!=m) printf("-1\n"); else printf("%lld %lld\n",Amn,Amx); return 0;}
阅读全文
0 0
- BZOJ4590 [Shoi2015]自动刷题机
- BZOJ4590: [Shoi2015]自动刷题机
- bzoj4590: [Shoi2015]自动刷题机
- 【bzoj4590】[Shoi2015]自动刷题机 二分
- [bzoj4590][Shoi2015]自动刷题机 二分
- 【bzoj4590】【SHOI2015】【自动刷题机】【二分答案】
- BZOJ4590——[Shoi2015]自动刷题机
- bzoj4590 [Shoi2015] 自动刷题机 二分答案
- 4590: [Shoi2015]自动刷题机
- 4590: [Shoi2015]自动刷题机
- 4590: [Shoi2015]自动刷题机
- bzoj 4590: [Shoi2015]自动刷题机
- BZOJ 4590: [Shoi2015]自动刷题机
- bzoj 4590: [Shoi2015]自动刷题机
- BZOJ 4590 [Shoi2015]自动刷题机
- 【BZOJ】4590 [Shoi2015]自动刷题机
- BZOJ P4590[Shoi2015]自动刷题机
- [bzoj]4590: [Shoi2015]自动刷题机
- hadoop 2.0中配置文件详解
- C++实现读取特定路径下文件夹及文件名的方法
- Fiddler抓包使用教程-基本功能介绍
- 人生之清单(list of life)
- 树的重心求法+POJ 1655
- BZOJ4590: [Shoi2015]自动刷题机
- PCM双声道分离为单声道
- android中的自定义封装易用的Dialog
- Thinking in Java整理笔记
- Python学习之旅-15
- Windows上搭建Tomcat本地服务器教程--自我积累
- 无协作,不原型!
- 如何用快启动pe修复win10系统引导?
- 带你入门学习Rxjava--上手教程