有一个有点坑,要注意:
因为n的最大值为100000,I*(n+1-i)乘积最大为50000*50000>2^31-1,会造成溢出
#include<cstdio>
const int maxn = 100010;
int main() {
int n;
double sum = 0,a;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
scanf("%lf", &a);
sum += i*((n+1-i) * a);
}
printf("%.2f\n", sum);
return 0;
}