题目:http://poj.org/problem?id=3273
题意:把n天分为m组,每组的天数是连续的,求每组花费之和最小
二分穷举,把花费的最大值和最小值求出,对其进行二分,从而求出符合要求的最小花费
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
1 #include2 #include 3 using namespace std; 4 int a[100010]; 5 int n,m; 6 int juge(int mid) 7 { 8 int sum=0; 9 int num=1;10 int i;11 for(i=0;i m)20 return 0;21 }22 }23 return 1;24 }25 int main()26 {27 scanf("%d %d",&n,&m);28 int i;29 int low=0;30 int high=0;31 for(i=0;i low)36 low=a[i];37 }38 int mid;39 40 while(low