木材加工

来源:互联网 发布:前瞻网数据库会员 编辑:程序博客网 时间:2024/04/27 09:54
#include<iostream>using namespace std;int main(){int n, k, len[10000], i, left, right, mid, num;cout << "请输入原木的数目N和需要得到的小段的数目K : " << endl;cin >> n >> k;right = 0;cout << "请输入各段原木的长度: " << endl;for (i = 0; i < n; i++){cin >> len[i];if (right < len[i]) right = len[i];}right++;left = 0;while (left + 1 < right){mid = (left + right) / 2;num = 0;for (i = 0; i < n; i++){if (num >= k)break;num = num + len[i] / mid;}if (num >= k)left = mid;elseright = mid;}cout << "能够切割得到的小段的最大长度为" << left << endl;return 0;}

0 0
原创粉丝点击