3089194_ac_156ms_240k.cpp
来自「北大大牛代码 1240道题的原代码 超级权威」· C++ 代码 · 共 42 行
CPP
42 行
#include <stdio.h>
#include <math.h>
const double pai = acos(-1);
int main()
{
int n, i, k;
double min, max, mid;
double len[10001];
int cnt, cas;
scanf("%d",&cas);
while(cas--)
{
scanf("%d%d",&n,&k);
k++;
for(i = 0; i < n; i++)
{
scanf("%lf",&len[i]);
len[i] *= len[i];
}
min = 0.0; max = 100000000.0;
while(min + 1e-7< max)
{
mid = (max+min)/2;
cnt = 0;
for(i = 0; i < n; i++)
{
cnt += (int)floor(len[i]/mid);
}
if(cnt < k)
max = mid;
else
min = mid;
}
min *= pai;
printf("%.4lf\n",min);
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?