一开始爆掉30分,先除后乘变成了60分
哪里也看不出来求调
#include <cstdio>
#include <algorithm>
int a[300005];
int main()
{
int n, mzg = 0, bfg = 0;
long double ssg = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &a[i]);
std::stable_sort(a, a + n);
while (n--)
{
mzg += a[n], bfg++;
if (mzg * 1.0 / bfg * mzg < ssg)
break;
else
ssg = mzg * 1.0 / bfg * mzg;
}
printf("%.6Lf", ssg);
return 0;
}