#3603. [GESP202606 五级 C++] 第 10 题
[GESP202606 五级 C++] 第 10 题
有若干根木头,长度存于 wood 。每切一刀可以把一段木头分成两段。函数 check(wood, K, x) 返回:
用不超过 K 刀,能否使所有木段长度都不超过 x 。下面代码使用二分答案查找最小可行的 x ,横线处应填(
)。
int binary_cut(vector<int>& wood, int K) {
int l = 1;
int r = 0;
for (int len : wood) r = max(r, len);
while (l < r) {
int mid = l + (r - l) / 2;
if (check(wood, K, mid))
________________; // 在此处填入代码
else l = mid + 1;
}
return l;
}
{{ select(1) }}
r = mid + 1r = midl = midr = mid - 1