求助第四个样例RE

P2440 木材加工

二分当 $l = 0,r = 1$ 时,$mid = 0$ 会出现 $len$ 为 $0$ 的情况。C++ 除数为 $0$ 会RE。
by liuruiqing @ 2024-04-19 18:32:41


```cpp #include <bits/stdc++.h> using namespace std; const int maxn = 1e5 + 50; int n,k,a[maxn]; bool check(int x){ int cnt = 0; for (int i = 1; i <= n; i++) { cnt += a[i] / x; if (cnt >= k) return true; } return false; } int bs(){ int l = 0,r = 1e8 + 1,mid; while (l + 1 < r) { mid = (l + r) / 2; if (check(mid)) l = mid; else r = mid; } return l; } int main(){ scanf("%d%d",&n,&k); for (int i = 1; i <= n; i++) scanf("%d",&a[i]); printf("%d",bs()); return 0; } ``` 我的代码。 @[ingzzc](/user/1139034)
by liuruiqing @ 2024-04-19 18:33:27


@[liuruiqing](/user/1118614) 谢谢
by ingzzc @ 2024-04-19 18:36:41


|