二分题目
来源:互联网 发布:淘宝店铺公告写招聘 编辑:程序博客网 时间:2024/05/17 04:06
POJ 3273
有点抽象,需要温故而知新
题意:给你天数n,和每天需要花的钱,让你把这些天分成m份(每份都是连续的天),要求每份的和尽量少,输出这个和。
代码:
//代码的思路即最后的答案
#include <iostream> using namespace std; #define maxn 100000 int day[maxn]; int n,m; int solve(int low,int high) { if(low==high) return low; int mid=(low+high)/2; int temp=mid,c=0; for(int i=0;i<n;++i) { if(temp-day[i]>=0) { temp-=day[i]; } else { c++; temp=mid-day[i]; } } c++; if(c>m) return solve(mid+1,high); //当最后组数大于m时,说明规定的mid偏小,所以low=mid+1 if(c<=m) return solve(low,mid-1); } int main() { int sum,max; while(scanf("%d%d",&n,&m)!=EOF) { sum=0; max=0; for(int i=0;i<n;++i) { scanf("%d",&day[i]); sum+=day[i]; //分成一组 if(day[i]>max) max=day[i]; //分成n组 //答案在n和1之间,所以最后的ans也在max和sum之间 } printf("%d\n",solve(max,sum)); } return 0; }
0 0
- 二分题目
- 二分题目
- 二分 二分经典题目
- 二分查找题目汇总
- 二分题目总结
- 二分搜索经典题目
- 题目:二分查找
- Leetcode中的二分题目
- 二分查找相关题目
- 题目1 : 二分·二分查找
- 题目1 : 二分·二分查找
- 二分图最佳匹配 题目
- HDU2063 二分匹配基础题目
- Leetcode二分查找类题目
- HDU 4430 二分~现场题目
- 题目1502:最大值最小化 二分
- 二分查找相关题目总结
- poj 匈牙利二分匹配 模板 poj题目
- MyBatis简单实例
- .net创建和调用WebService
- Spring事务异常回滚,捕获异常不抛出就不会回滚
- 并查集
- 欢迎使用CSDN-markdown编辑器
- 二分题目
- String类与基本类型
- POJ 2299 线段树求逆序数
- 有关Intel主板驱动静默安装的一个坑
- SSCANF这才是我想要的。。
- SQL语句总结(视图,序列,存储过程,函数,游标)
- 如何使用swiper
- C++中Vector的erase()操作以及与remove的区别
- 如何视觉隐藏网页内容,只让它们在屏幕阅读器中可用?