下附代码,怀疑是掉精了?
#include<bits/stdc++.h>
using namespace std;
long long n, k;
double a[10010];
bool check(double mid)
{
long long cnt = 0;
for(int i = 1;i <= n;i++)
{
double x = a[i] / mid;
cnt += (int) x;
}
if(cnt >= k)
return true;
else
return false;
}
int main()
{
cin >> n >> k;
for(int i = 1;i <= n;i++)
cin >> a[i];
double l = 0, r = 100000;
while(r - l >= 1e-5)
{
double mid = (l + r) / 2;
if(check(mid))
l = mid;
else
r = mid;
}
cout << setiosflags(ios::fixed) << setprecision(2) << l << endl;
return 0;
}