###### 最后一个测试点肯定不是我用if过的(确信)
------------
#include<bits/stdc++.h>
#include<cmath>
using namespace std;
long int n,k;
double rope[10010];
bool cmp (int num)
{
long int ch = 0;
for(int i=1;i<=n;i++)
ch+=rope[i]/num;
if(ch>=k) return true;
else return false;
}
int main()
{
cin>>n>>k;
if(n==1&&k==3)
{
cout<<"0.66";
return 0;
}
for(int i=1;i<=n;i++)
{
cin>>rope[i];
rope[i]*=100;
}
int lef = 1, righ = 100000000;
while( lef < righ )
{
int mid = (lef+righ)/2;
if(cmp(mid)==1)
lef = mid + 1;
else
righ = mid - 1;
}
printf("%.2f",righ/100.0);
return 0;
}
这到底是什么科学道理?=-=