给出10000个数据时超时
#include
using namespace std;
#define Pi 3.14159
int main()
{
int n,f,r[10010];
float l = 0,h = 0;
cin >> n >> f;
for(int i = 0; i < n; i++){
cin >> r[i];
h = h + r[i] * r[i];
}
h = h * Pi / f;
while(h - l >=1e-4){
float mid = l + (h - l) / 2;
int num = 0;
for(int i = 0; i < n; i++){
num = num + int(r[i] * r[i] * Pi / mid);
}
if(num >= n+1)l = mid;
else
h = mid;
}
printf("%0.3f",l);
return 0;
}
POJ派
最新推荐文章于 2020-03-07 17:48:54 发布