在一開始接觸到這一題的時候,和大多數人一樣,一臉蒙蔽;這種要涉及到數字計算的題目如果沒有一定的經驗,一般都是無從下手的。
我去baidu了一下,看到了一句話,秒懂。
大家可以自己去拿兩個除不盡的數去列一下豎式,就會發現,每一次除以除數的都是除剩下的餘數,然後乘以10,再一次除以除數,也就是說如果哪一次餘數相同了,那後面的書必然和前面的數構成乙個迴圈。
下面是我自己寫的c語言**(覺得c語言簡潔易懂,就沒用c++)
#include
intmain()
;//這個是要輸出的迴圈的小數部分;
res[0]
=(temp*10)
/b;while
((x*10)
%b!=temp)
printf
("%d\n"
,n);
int i;
printf
("%d.("
,a/b)
;for
(i=0
;i)printf
("%d"
,res[i]);
printf
(")");
return0;
}
這是執行結果,和給出的例項相符。
劉汝佳《演算法競賽入門經典》索引筆記
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 ...
演算法競賽入門經典(劉汝佳) 習題2 4子串行的和
樣例輸入 2 465536 655360 0 0樣例輸出 case 1 0.42361 case 2 0.00001 分析 輸出保留5位小數 輸入包含多組資料 這意味著資料是成批的,是一堆放在一起的,需要自己確定那幾個資料是本次需要的 結束標記 n m 0,表示n和m中任意乙個都不為零 n6本題有陷...
演算法競賽入門經典 劉汝佳 第七章暴力
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 這...