L2-4
呵呵侠
2020-03-29 20:17:40
```cpp
#include <iostream>
using namespace std;
int a[100010], n, k, l = 1, r = 100000, mid, ans;
bool check(int m)
{
int num = 0;
for(int i = 1; i <= n; i = i + 1)
num = num + a[i] / mid;
if(num > k)
return 1;
else
return 0;
}
int main()
{
cin >> n >> k;
for (int i = 1; i <= n; i++)
{
cin >> a[i];
}
while(l <= r)
{
mid = (l + r) / 2;
if(check(mid) == 1)
{
ans = mid;
l = mid + 1;
}
else
r = mid - 1;
}
cout << ans + 1 << endl;
return 0;
}
```