如果採用單純的暴力枚舉,會出現超時問題,可以跟絕遞推來找出來規律;
代碼如下:
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
#include<cstring>
#include<math.h>
using namespace std;
const int maxn=100100;
double data[maxn];
int mem[maxn];
int main(){
int n;
double sum=0.0;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%lf",&data[i]);
sum+=data[i]*(n-i)*(i+1);
}
printf("%.2lf",sum);
system("pause");
return 0;
}