【算法競賽 入門經典】習題2-4 子序列的和

一、題目

輸入兩個正整數n<m<10^ 6,輸出在這裏插入圖片描述保留5位小數,輸入包含多組數據,結束標記爲n=m=0.
例:
輸入:
2 4
65536 655360
0 0
輸出:
Case 1:0.42361
Case 2:0.00001

二、解題思路

需要注意nxn可能會溢出,因而計算1.0/nxn時可以換成1.0/n/n

三、代碼

#include<stdio.h>
int main(){
 int n,m,i,kase=0;
 double sum;
 while((scanf("%d%d",&n,&m)!=EOF) && n && m){
  sum=0;
  for(i=n;i<=m;i++){
   sum+=1.0/i/i;
  }
  printf("Case %d: %.5lf\n",++kase,sum);
 }
 return 0;
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章