分享乙個藍橋杯的題目,在藍橋杯中算是偏簡單。可我就是想寫(手動狗頭)
是乙個**填空題,給出的**如下
public static int func(int n,int m)
}
以上**的作用是求兩個數字相除的迴圈節長度。求迴圈節長度如果自己幹想的話如果沒有找對思路應該是很難的,我之前就一直在想怎麼依靠求出來的商值去求。但依靠商值真的是個錯誤的想法。因為迴圈節可能是1231234這樣的,這樣程式碰到兩個123就以為123就是所要求的了(不要抬槓,1231231234也有可能)。這裡使用的是判斷餘數的做法,餘數(也就是下一輪的被除數)相同,除數相同,商當然也相同。
這個題說他簡單是因為這就是模擬的除法的過程,如果你清楚怎麼實現大數運算的話就不在話下了。
好的,那麼答案究竟是什麼呢?接下來就是見證滿分的時刻
return v.size()-v.indexof(n)
藍橋杯 迴圈節長度
題目如下 迴圈節長度 兩個整數做除法,有時會產生迴圈小數,其迴圈部分稱為 迴圈節。比如,11 13 6 0.846153846153.其迴圈節為 846153 共有6位。下面的方法,可以求出迴圈節的長度。請仔細閱讀 並填寫劃線部分缺少的 public static int f int n,int m...
藍橋杯JAVB語言B組 迴圈節長度
兩個整數做除法,有時會產生迴圈小數,其迴圈部分稱為 迴圈節。比如,11 13 6 0.846153846153.其迴圈節為 846153 共有6位。下面的方法,可以求出迴圈節的長度。請仔細閱讀 並填寫劃線部分缺少的 public static int f int n,int m 注意,只能填寫缺少的...
迴圈節長度以及迴圈節
迴圈節長度 兩個整數做除法,有時會產生迴圈小數,其迴圈部分稱為 迴圈節。比如,11 13 6 0.846153846153 其迴圈節為 846153 共有6位。這是一道藍橋杯的題目,試卷上是乙個填空題,思路就是不斷的對除數取餘,然後乘10後再取餘,直到餘數在之前出現過或者為0 結束。為什麼是這樣的呢...