POJ 3273 Monthly Expense
来源:互联网 发布:淘宝店铺怎么复制商品 编辑:程序博客网 时间:2024/05/17 02:19
Description
Farmer John is an astounding accounting wizard and has realized he might run out of money to run the farm. He has already calculated and recorded the exact amount of money (1 ≤ moneyi ≤ 10,000) that he will need to spend each day over the next N (1 ≤ N ≤ 100,000) days.
FJ wants to create a budget for a sequential set of exactly M (1 ≤ M ≤ N) fiscal periods called "fajomonths". Each of these fajomonths contains a set of 1 or more consecutive days. Every day is contained in exactly one fajomonth.
FJ's goal is to arrange the fajomonths so as to minimize the expenses of the fajomonth with the highest spending and thus determine his monthly spending limit.
Input
Lines 2.. N+1: Line i+1 contains the number of dollars Farmer John spends on the ith day
Output
Sample Input
7 5100400300100500101400
Sample Output
500
Hint
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;#define maxn 100005#define inf 0x3f3f3f3fint n,m;int a[maxn];bool c(int d){ int sum=1; int temp=0; for(int i=1;i<=n;i++){ if(a[i]+temp>d){ sum++; temp=a[i]; } else temp+=a[i]; if(sum>m)return false; //不要忘记最后剩下的也要算一个月 } return true;}int main(){ //freopen("in.txt","r",stdin); while(~scanf("%d%d",&n,&m)){ int maxs=0; int mins=0; for(int i=1;i<=n;i++){ scanf("%d",&a[i]); maxs+=a[i]; mins=max(a[i],mins); } int ub=maxs+1; //注意这个范围 int ua=mins-1; //注意这个范围 int mid=0; while(ub-ua>1){ mid=(ub+ua)/2; if(c(mid))ub=mid; else ua=mid; } printf("%d\n",ub); //最后输出的要满足条件,所以符合c()的最好。 }}
- poj 3273 Monthly Expense
- poj-3273 Monthly Expense
- poj 3273 Monthly Expense
- poj 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ-3273-Monthly Expense
- POJ 3273 Monthly Expense
- poj 3273 Monthly Expense
- POJ 3273 Monthly Expense
- poj 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ 3273 Monthly Expense
- POJ - 3273 Monthly Expense
- POJ-3273-Monthly Expense
- POJ 3273 Monthly Expense
- 从剑指offer -- 二叉搜索树的后序遍历序列 -- 看二叉搜索树的遍历
- 股票学习(财务分析09)
- HDU -- 3667 Transportation(最小费用最大流 )
- The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files
- 解决生成opencv源码时出现的:could not find cmake module file
- POJ 3273 Monthly Expense
- MongoDB- C# 驱动之增删改查
- Hdu A+B for Input-Output Practice (I)
- spring(5) Spring的自动装配(开发时基本不用)
- Python进阶---目录名的拼接
- 03-树2. List Leaves (25)
- UVA-512 Spreadsheet Tracking
- Reactor Cooling - sgu 194 无源汇可行流
- 3D数学 矩阵和线性变换之切变