题目链接

今天给大家整点二分加贪心的题

题意

这个题是说在一个走廊上有n个房间,2个宿管从两端向中间查询,当宿管发现房间里的人数不足b个时,就记录下并锁门,两个宿管各自记录一边的,特别的,当n为奇数时,左边的宿管多查一个房间,求两个宿管记录数最大值的最小值。(P&S:当人数多于b个时,学生可以藏在床底下以躲过宿管的查房)

思路

像这种题,一看就是个二分题,那么我们该怎么验证可行性呢?
很容易想到如果一个房间不能满足,那么我们的最优策略就是留下一个空房间,将人往中间集中
所以可以得到中间一定满足的是一段连续的序列,故我们可以二分这个序列的最左端(也可以说是最右端),然后得到一个最大值。
如图:

代码

具体操作见代码

bool check(int x)
{ll dis = 1ll * d * (x + 1);int p1 = 1, p2 = n, s1 = x + 1, s2 = n - x;for (int i = 1; i <= n; i++)a[i] = t[i];while (s1 < s2){int tmp = b;while (a[p1] < tmp) tmp -= a[p1++];a[p1] -= tmp;if (p1 - s1 > dis)return 0;if (n % 2 == 1 && s1 == (n + 1) / 2)break;tmp = b;while (a[p2] < tmp)   tmp -= a[p2--];a[p2] -= tmp;if (s2 - p2 > dis)return 0;dis += d, s1++, s2--;}return 1;
}
int main()
{rd(n), rd(d), rd(b);for (int i = 1; i <= n; i++)rd(t[i]);int l = 0, r = (n + 1) / 2, ans;while (l <= r){int mid = (l + r) >> 1;if (check(mid))r = mid - 1, ans = mid;elsel = mid + 1;}pt(ans);return 0;
}

谢谢

CF949D Curfew solution相关推荐

  1. 【CF949D】Curfew(贪心)

    [CF949D]Curfew(贪心) 题面 CF 洛谷 破池姐姐翻译好强啊 题解 今天菊开讲这题,我大力猜想一波说肯定从中间有个分界线,他还说可能是假的 大力贪心就好了,从两边往中间考虑,只要这个房间 ...

  2. SharePoint【调试,诊错系列】-- 一种调试Sharepoint2010 Solution的快捷方式

    Visual Studio 2010 支持通过F5来调试Sharepoint Solutions,但这种方法却很难用在调试workflows, event recievers, custom cont ...

  3. 什么是Closed-form solution?

    最近看论文,讨论微分方程解时遇到closed-form solution概念,上网检索,找到一个较浅显易懂的解释如下. 与工学院所学的微分方程不同的是,工学院的学生一般都是学如何把特定的微分方程的解用 ...

  4. Java was not the perfect solution for every pro...

    为什么80%的码农都做不了架构师?>>> When I started writing From Java to Ruby, I had a good idea that Java ...

  5. 一、ExtMail Solution概述--EXTMAIL

    1.版权声明 本文版权归作者所有,如其他个人.第三方网站或媒体报刊等需转载全文或节选,为支持我们的工作,请务必注明如下信息:文档所有者:Extmail Dev Team;文章原始出处:http://w ...

  6. 影像组学视频学习笔记(43)-标准差、标准误及95%置信区间CI、Li‘s have a solution and plan.

    作者:北欧森林 链接:https://www.jianshu.com/p/f09d0f97592f 来源:简书,已获授权转载 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(43)主要 ...

  7. 影像组学视频学习笔记(42)-影像组学特征提取问题解决过程复现、Li‘s have a solution and plan.

    作者:北欧森林 链接:https://www.jianshu.com/p/c3e6de2f79b3 来源:简书,已获转载授权 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(42)主要 ...

  8. 影像组学视频学习笔记(41)-如何使用软件提取组学特征、Li‘s have a solution and plan.

    作者:北欧森林 链接:https://www.jianshu.com/p/72186eb3e395 来源:简书,已获授权转载 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(41)主要 ...

  9. 影像组学视频学习笔记(37)-机器学习模型判断脑卒中发病时间(文献报告)、Li‘s have a solution and plan.

    作者:北欧森林 链接:https://www.jianshu.com/p/3e7a2c84288e 来源:简书,已获授权转载 RadiomicsWorld.com "影像组学世界" ...

  10. 影像组学视频学习笔记(23)-主成分析PCA、降维和特征筛选的区别、Li‘s have a solution and plan.

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(23)主要讲解: 主成分析PCA,影像组学降维和特征筛选的区别 0. PCA(Principal component analysis) ...

最新文章

  1. 云计算灾备原理与预防恢复方案
  2. Mysql:事务管理——未完待续
  3. 温故知新-[CPP]-Eclipse-CPP中一个Project多个Main
  4. java get和post区别_HTTP请求方式GET和POST区别
  5. 详解--单调队列 经典滑动窗口问题
  6. leetocde1129. 颜色交替的最短路径(bfs)
  7. python循环结构语句_python控制语句---循环结构语句
  8. tensorflow 学习资料汇总
  9. gin 编译路径错误_[系列] Gin框架 - 自定义错误处理
  10. ~~KMP(数据结构)
  11. python下载第三方库失败的解决办法
  12. TI CCS下载和安装
  13. GB 4208-93 外壳防护等级(IP代码)
  14. C++ 批量图片拼接
  15. IBM X系列服务器通过sysmgmt接口查看日志
  16. 未来10年35项最值得你期待的技术(中)
  17. 在SAP系统中,更改一个公司代码(Company Code)的会计科目表(Chart of Accounts)
  18. python clicknium 库自动化千牛桌面端
  19. excel打印预览在哪里_易打标条码标签设计打印软件下载_易打标条码标签设计打印软件绿色版下载...
  20. CSDN cdsn显示发布频繁 请稍后重试 和保存草稿不成功 的解决办法

热门文章

  1. 微信小程序自定义生成动态分享内容
  2. a洋发卡网sadnt模板美化
  3. 声音采样率对声音事件分类的简单探究
  4. iPhone中使用ShareKit一键分享到Facebook,Twitter等多平台
  5. [周鸿祎] 与其苟且活着,不如奋起抗争
  6. oracle11g64为的安装,PLSQL Developer连接不上Win7 64为系统下安装的Oracle11g64位的解决办法...
  7. Unregistering application *** with eureka with status DOWN
  8. seo秘籍,seo秘籍-自学seo零基础知识入门优化教程
  9. 阿里云DevOps助理工程师认证(ACA)笔记
  10. Springboot 注解最全详解