题目链接
题意求 ∑i=1n1i2
思路:打表预处理小的。注意输出可能是大数
#include<bits/stdc++.h>
using namespace std;
double ans[10000110];
char s[111111];
int main()
{
ans[0]=0.0;
for(int i=1;i<=1000001;i++) {
ans[i]=ans[i-1]+1.0/((double)i*(double)i);
}
while(scanf("%s",s)!=EOF) {
if(strlen(s)>=7) {
printf("1.64493\n");
}
else {
int x=0;
int len=strlen(s);
for(int i=0;i<len;i++) {
x=x*10+s[i]-'0';
}
printf("%.5f\n",ans[x]);
}
}
return 0;
}