#include<iostream>
#include<cstdio>
#include<memory.h>
#include<algorithm>
#include<iomanip>
using namespace std;
double tu[10001];
int main()
{
int T;
cin>>T;
while(T--)
{
memset(tu,0,sizeof(tu));
int n,k;
cin>>n>>k;
k++;
double xiao=0,da=0;
for(int a=1;a<=n;a++)
{
cin>>tu[a];
tu[a]*=tu[a];
da=max(da,tu[a]);
}
double mid;
while(da-xiao>1e-6)
{
mid=(da+xiao)/2;
int quan=0;
for(int a=1;a<=n;a++)quan+=int(tu[a]/mid);
if(quan<k)da=mid;
else xiao=mid;
}
cout<<fixed<<setprecision(4)<<mid*3.1415926535898<<endl;
}
return 0;
}
poj3122 二分
最新推荐文章于 2022-02-12 18:15:08 发布