1049 数列的片段和 测试点2、3数据精度问题
作者:互联网
问题
cnt=cnt+a[i]*(i+1)*(n-i);
此处容易溢出,因此必须用long double
注意点
cout的格式化输出,iomanip
cout<<fixed<<setprecision(2)<<cnt;
代码
#include <iostream>
#include <cstdio>
#include <iomanip>
using namespace std;
long double a[100003];
int main(){
long n;
long double cnt=0;
cin>>n;
for(long i=0;i<n;i++){
cin>>a[i];
cnt=cnt+a[i]*(i+1)*(n-i);
}
cout<<fixed<<setprecision(2)<<cnt;
return 0;
}
标签:片段,cout,测试点,double,1049,cnt,long,include 来源: https://www.cnblogs.com/wodeblog1982/p/16461597.html