子序列之和

514 词

题目描述

给定两个整数$n$,$m$, $0 < n < m < 10^6$ 输出$1/n^2+1/(n+1)^2+….+1/m^2$保留5位小数,例如$n=2$, $m=4$ 答案是$0.42361$ $n=65536$ $m=655360$ 答案是$0.00001$。

输入

有多组测试数据,每一行有$n m$

输出

$1/n^2+1/(n+1)^2+….+1/m^2$保留5位小数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<bits/stdc++.h>
using namespace std;int main(){
int n,m;
long double s=0;
while(scanf("%d %d",&n,&m)!=EOF){
while(n<=m){
long double nn=(int)n;
s=s+(1/(nn*nn));
n=n+1;
}
printf("%.5Lf\n",s);
s=0;
}
return 0;
}