天天看點

算法競賽入門經典 習題2-4 子序列的和(subsequence)

習題2-4 子序列的和(subsequence)

輸入兩個正整數n<m<106,輸出 ,保留5位小數。輸入包含多組資料, 結束标記為n=m=0。提示:本題有陷阱。

樣例輸入:

2 4

65536 655360

0 0

樣例輸出:

Case 1: 0.42361

Case 2: 0.00001

```c
#include<stdio.h>
int main()
{
 int i,n,m,kase=0;
 float a=0,sum=0;
 while(scanf("%d %d",&n,&m)!=EOF &&n&&m)
 {
  float sum=0;
  for(i=n;i<=m;i++)
  {
   a=1.0/i/i;   //注意不能a=1.0/(i*i) 會溢出
   sum+=a;
  }
  printf("Case %d : %.5f\n",++kase,sum);  
 }
 return 0;
}
           

繼續閱讀