当前位置: 首页 > news >正文

bzoj千题计划278:bzoj4590: [Shoi2015]自动刷题机

http://www.lydsy.com/JudgeOnline/problem.php?id=4590

 

二分

这么道水题 没long long WA了两发,没判-1WA了一发,二分写错WA了一发

最近是怎么了啊啊啊O(≧口≦)O

 

#include<cstdio>
#include<iostream>

using namespace std;

int n,m;

int x[100001];

void read(int &x)
{
    x=0; int f=1; char c=getchar();
    while(!isdigit(c)) { if(c=='-') f=-1; c=getchar(); }
    while(isdigit(c)) { x=x*10+c-'0'; c=getchar(); }
    x*=f;
}

int check(long long k)
{
    long long now=0;
    int sum=0;
    for(int i=1;i<=n;++i)
    {
        now+=x[i];
        if(now>=k) sum++,now=0;
        else if(now<0) now=0;
    }
    return sum;
}

int main()
{
    freopen("autoac.in","r",stdin);
    freopen("autoac.out","w",stdout);
    read(n); read(m);
    for(int i=1;i<=n;++i) read(x[i]);
    long long l=1,r=1LL*n*1e9,tmp=-1,mid;
    int t;
    while(l<=r)
    {
        mid=l+r>>1;
        t=check(mid);
        if(t==m) tmp=mid,r=mid-1;
        else if(t>m) l=mid+1;
        else r=mid-1;
    }
    if(tmp==-1) 
    {
        printf("-1");
        return 0;
    }
    cout<<tmp<<' ';
    l=tmp,r=1LL*n*1e9;
    while(l<=r)
    {
        mid=l+r>>1;
        t=check(mid);
        if(t==m) tmp=mid,l=mid+1;
        else if(t>m) l=mid+1;
        else r=mid-1;
    }
    cout<<tmp;
    return 0;
}

 

转载于:https://www.cnblogs.com/TheRoadToTheGold/p/8562623.html

相关文章:

  • 函数式编程
  • kafka消息可靠性
  • Web 页面性能分析笔记
  • 人工智能会不会变成终结者,这事儿人工智能自己说了不算
  • 二.压缩指令的应用
  • 用一个实际例子理解Docker volume工作原理
  • mysql only_full_group_by
  • Spring基于Scheduler的定时任务模块
  • 2015年高交会又有什么值得期待的黑科技?
  • bootstrap重置项 及响应式版心 row类清除margin
  • 网路通信问题收集
  • 【译】Vue 的小奇技(第八篇):两个鲜有人知的 Vuex 技巧
  • AI 芯片,是金山还是泡沫?
  • 友情链接有什么用
  • Ansible杂记(2)
  • 深入了解以太坊
  • [PHP内核探索]PHP中的哈希表
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Angular 响应式表单之下拉框
  • ES2017异步函数现已正式可用
  • FastReport在线报表设计器工作原理
  • JavaScript函数式编程(一)
  • Linux后台研发超实用命令总结
  • React Native移动开发实战-3-实现页面间的数据传递
  • 编写符合Python风格的对象
  • 七牛云假注销小指南
  • 如何合理的规划jvm性能调优
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • gunicorn工作原理
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • # 飞书APP集成平台-数字化落地
  • ###C语言程序设计-----C语言学习(6)#
  • (libusb) usb口自动刷新
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (一)SpringBoot3---尚硅谷总结
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • *上位机的定义
  • .NET 分布式技术比较
  • .NET 解决重复提交问题
  • .Net程序帮助文档制作
  • /*在DataTable中更新、删除数据*/
  • @AutoConfigurationPackage的使用
  • @Transaction注解失效的几种场景(附有示例代码)
  • @取消转义
  • [ JavaScript ] JSON方法
  • [.NET]桃源网络硬盘 v7.4
  • [AIGC] Nacos:一个简单 yet powerful 的配置中心和服务注册中心
  • [Angularjs]ng-select和ng-options
  • [BT]BUUCTF刷题第4天(3.22)