樣例輸入:
2 465536 655360
0 0樣例輸出:
case 1:0.42361
case 2:0.00001
分析:
輸出保留5位小數
輸入包含多組資料(這意味著資料是成批的,是一堆放在一起的,需要自己確定那幾個資料是本次需要的)
結束標記:n=m=0,表示n和m中任意乙個都不為零
n6本題有陷阱(陷阱一般都是在執行中發現,詳見最後題解)
**:
//演算法競賽入門經典
//習題2-1子串行的和
#include
intmain()
count++
;printf
("case%d:%.5f\n"
,count,sum);}
return0;
}
題解:本題的陷阱主要在「sum=sum+1.0/i/i;」語句中,你是否覺得**中的兩個相除很難受,從而是這樣表達該語句的:sum=sum+1.0/(i*i);那麼你可能遇到了如下情況:
出現上述情況的原因在於:n的值過大,從而 i的值也很大,在計算 i * i 時發生了乘法溢位。
劉汝佳《演算法競賽入門經典》索引筆記
2015年4月30日 acm學習技巧 14 浮點數陷阱 18 include 22 fopen input.txt r stdin 25 ifdef 26 lld 29 大陣列在main外面宣告 34 memset a,0,sizeof a 35 count 濫用 40 linux換行符問題 41 ...
演算法競賽入門經典 劉汝佳 第七章暴力
0 1 增量構造法 include include include include using namespace std int n,t 100 ans 100 void solve int cur,int tpre int main return 0 2 位向量法vis i 1表示選中t i 這...
《演算法競賽 入門經典》劉汝佳第四章
象棋uva1589 題目 給定乙個棋局,黑方僅剩一將,紅方剩2 7個棋子,型別有g 帥 h 馬 r 車 c 炮 現輪黑方走,判斷黑方下完後是否為輸,輸則輸出yes,不輸則 輸出no。輸入第一行n,x,y,接下去行,每行型別 ch 座標 x,y 以0 0 0為輸 入終止。sample 輸入 5 1 5...