WHYZOJ-#60 工资(二分)
【题目描述】:
聪哥在暑假参加了打零工的活动,这个活动分为n个工作日,每个工作日的工资为Vi。有m个结算工钱的时间,聪哥可以自由安排这些时间,也就是说什么时候拿钱,老板说的不算,聪哥才有发言权!(因为聪哥是土豪,他是老板的老板)
聪哥不喜欢身上一次性有太多的钱,于是他想安排一下拿钱的时间,使他一次性拿的钱中最大的最小。(最后一天一定要领钱)
【输入描述】:
第一行 2个数 n,m
接下来n行,每行一个数,代表Vi。
【输出描述】:
最小的最大钱数。
【样例输入】:
7 5
100
400
300
100
500
101
400
【样例输出】:
500
【样例说明】:
100 400//300 100//500//101//400//
“//”表示老大要去拿钱。
【时间限制、数据范围及描述】:
时间:1s 空间:256M
20% : 1<=n<=20
另20%:1<=n<=50, Vi的和不超过1000
100%: 1<=n<=100,000, m<=n, Vi<=10,000
1 #include "bits/stdc++.h" 2 using namespace std; 3 typedef long long LL; 4 const int MAX=100005; 5 int n,m; 6 LL a[MAX]; 7 LL low,high,mid; 8 void init(){ 9 int i,j; 10 scanf("%d%d",&n,&m); 11 for (i=1;i<=n;i++){ 12 scanf("%lld",a+i); 13 low=max(low,a[i]); 14 high+=a[i]; 15 } 16 } 17 bool feasible(LL x){ 18 int i,j; 19 LL zt=0,an=0; 20 for (i=1;i<=n;i++){ 21 if (a[i]+zt>x){ 22 zt=a[i]; 23 an++; 24 } 25 else 26 zt+=a[i]; 27 } 28 return (an>=m); 29 } 30 int main(){ 31 init();int i,j; 32 while (low<=high){ 33 mid=(low+high)>>1; 34 if (feasible(mid)) 35 low=mid+1; 36 else 37 high=mid-1; 38 } 39 printf("%d",low); 40 return 0; 41 }
转载于:https://www.cnblogs.com/keximeiruguo/p/7309771.html
WHYZOJ-#60 工资(二分)相关推荐
- 请假工资扣费总额计算机公式,病假扣款计算公式excel
1.求Excel公式函数公式:病假扣款:工龄10年以上,每日扣日工资的20%:工龄5年以上,每天扣日工资的3...... 假设假别写在B2单元格,请假时间写在C2单元格,工龄写在D2单元格,日工资写在 ...
- 10年日语营业转行IT从深圳到日本东京圈工作生活2019copy
10年日语营业转行IT从深圳到日本东京圈工作生活2019 主旨:成人学历可以来日本,拖家带口可以来日本,不通过中介可以来日本,只会日语不会IT可以来日本. 序章 日本对于我来说确实曾经像一个童话, 日 ...
- MySQL练习题全部
时间date可以直接比较 hiredate date comment '入职时间', a.hiredate < b.hiredate CONVERT函数 没有转化为int CONVERT函数用于 ...
- ZJOI2017 讲课Day1笔记
额,参考一下大神的笔记.... 地址 http://www.cnblogs.com/ARZhu-NOIpAK/p/6596879.html Day1 2017-3-24 3:34:43 苟-- 富贵 ...
- 比赛经验总结--187
cqround1 1.这次比赛160分 (1)反质数:60 (2)二分答案+2sat:验证: 0分 (3)树上LCA+推公式: 100分 2.总结:这次比赛第三题做起来非常顺,做过类似的题:奶牛大集 ...
- 找了这么多毕业设计题目,反而不知道选哪个了
1.学生宿舍管理系统 2.仓库管理系统 3.超市销售管理系统 4.工资管理系统 5.供应商管理系统 6.会员卡管理系统 7.计量管理系统 8.进销存财务管理系统 9.进销存管理系统 10.人才管理系统 ...
- [渝粤教育] 陕西科技大学 数控加工技术 参考 资料
教育 -数控加工技术-章节资料考试资料-陕西科技大学[] 数控加工基本过程及编程流程知识测验 1.[单选题]数控编程中,公制.英制编程适用于( ). A.数控车床 B.数控铣床 C.加工中心 D.数控 ...
- 软件公司(company)
Description 一家软件开发公司有两个项目,并且这两个项目都由相同数量的m个子项目组成,对于同一个项目,每个子项目都是相互独立且工作量相当的,并且一个项目必须在m个子项目全部完成后才算整个项目 ...
- 大厂程序媛的特殊烦恼:男朋友工资只有自己的60%,天天阴阳怪气!
工资高有工资高的快乐,也有相应的烦恼. 一个大厂程序媛发帖吐槽:男朋友自从知道他的工资只有自己的60%之后,每天阴阳怪气,真让人不爽! 网友调侃楼主男朋友,不就是软饭硬吃吗?有什么大不了的? 许多人认 ...
最新文章
- 一项震动制药行业的研究:大型制药公司AI的生产力
- mysql sqlserver分页_SQLServer常用分页方式
- 面向对象的继承关系体现在数据结构上时,如何表示
- 激光slam-- .pgm格式地图分析及修改方法
- c语言实验报告5数组,c语言实验报告五一维数组.doc
- Oracle数据库空间突然增大,Oracle 表空间异常增长过快解决方法
- C# 取二位小数点(四舍五入)
- 算法-字符串 循环左移
- 【Vegas改编】发布infopath模板到sharepoint2007站点
- 排序算法之八 桶排序(C++版本)
- 打算为IBatisNet 引入自定义Membership和Role
- cad计算机试题及答案,CAD考试试题库及参考答案整理版.doc
- 数据处理——偏最小二乘法
- RHEL7 CentOS7 检查查看精简指令
- 【所见即所得】数据分析最有用的25个 Matplotlib图【附代码】
- 【C语言练习】分离英语句子中的单词并统计每个单词出现次数后排序输出
- java word checkbox_springmvc poi 导出word 复选框 怎么用
- 女朋友要求道歉100遍:普通人和程序员的做法分别是:
- 从单机到多机:多机一定比单机快吗?秒杀系统到底有没有必要用分布式锁?
- 文件名称重命名后,一键恢复的技巧