咸宁网站建设哪家专业,wordpress 苏醒主题,做网站西安哪家好,长春建设工程信息网站Problem C:木材加工 Time Limit:1000MS Memory Limit:65536K Total Submit:48 Accepted:20 Description 【问题描述】 木材厂有一些原木#xff0c;现在想把这些木头切割成一些长度相同的小段木头#xff08;木头有可能有剩余#xff09;#xff0c;需要得到的小段的数目是…Problem C:木材加工 Time Limit:1000MS Memory Limit:65536K Total Submit:48 Accepted:20 Description 【问题描述】 木材厂有一些原木现在想把这些木头切割成一些长度相同的小段木头木头有可能有剩余需要得到的小段的数目是给定的。当然我们希望得到的小段越长越好你的任务是计算能够得到的小段木头的最大长度。木头长度的单位是cm。原木的长度都是正整数我们要求得到的小段木头的长度也是正整数。 【输入格式】 第一行是两个正整数N和K1≤N≤1000001≤K≤200000N是原木的数目K是需要得到的小段的数目。接下来的N行每行有一个1到10000之间的正整数表示一根原木的长度L。 【输出格式】 输出能够切割得到的小段的最大长度。如果连1cm长的小段都切不出来输出“0”。 【输入样例】 3 7 232 124 456 【输出样例】 114 Input Output Sample Input Sample Output #includeiostream
#includecstdio
using namespace std;
int k,n;
long long mu[1000010];
bool check(int zhi )
{int sum0;for(int i1;in;i){summu[i]/zhi;}if(sumk) return true;else return false;
}
long long er(int low,int high)
{int mid;while(low1high){midlow(high-low)/2;if(check(mid)) lowmid;else highmid;}return low;
}
int main()
{long long sum0;cinnk;for(int i1;in;i){scanf(%lld, mu[i]);summu[i];} couter(0,sum/k1);return 0;
} 二分答案的题目左边界(哨兵)0右边界(哨兵)木头的总长度/方案数1转载于:https://www.cnblogs.com/thj0305/p/9419574.html