亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java實現Fibonacci(斐波那契)取余的示例代碼

瀏覽:61日期:2022-09-05 08:13:15

DescriptionFibonacci數列的遞推公式為:Fn=Fn-1+Fn-2,其中F1=F2=1。

當n比較大時,Fn也非常大,現在我們想知道,Fn除以10007的余數是多少。

Input多組測試數據

輸入包含一個整數n。1 <= n <= 1,000,000。

Output每組輸出一行,包含一個整數,表示Fn除以10007的余數。

Sample Input1022

Sample Output557704

利用余數三大定理:

1.余數的加法定理

a與b的和除以c的余數,等于a,b分別除以c的余數之和,或這個和除以c的余數。

即:(a+b)%c = (a%c+b%c)%c

例如:23,16除以5的余數分別是3和1,所以23+16=39除以5的余數等于4,即兩個余數的和3+1.

當余數的和比除數大時,所求的余數等于余數之和再除以c的余數。

例如:23,19除以5的余數分別是3和4,故23+19=42除以5的余數等于3+4=7除以5的余數,即2.

2.余數的乘法定理

a與b的乘積除以c的余數,等于a,b分別除以c的余數的積,或者這個積除以c所得的余數。

即:(a*b)%c = (a%c*b%c)%c

例如:23,16除以5的余數分別是3和1,所以23×16除以5的余數等于3×1=3。

當余數的和比除數大時,所求的余數等于余數之積再除以c的余數。

例如:23,19除以5的余數分別是3和4,所以23×19除以5的余數等于3×4除以5的余數,即2.

3.同余定理

若兩個整數a、b被自然數m除有相同的余數,那么稱a、b對于模m同余,用式子表示為:a≡b ( mod m ),左邊的式子叫做同余式。

同余式讀作:a同余于b,模m。由同余的性質,我們可以得到一個非常重要的推論:

若兩個數a,b除以同一個數m得到的余數相同,則a,b的差一定能被m整除

用式子表示為:如果有a≡b ( mod m ),那么一定有a-b=mk,k是整數,即m|(a-b)

那么:如果有mk%m=0,b%m=0,就有(mk+b)%m

package 第八次模擬;import java.util.Scanner;public class Demo12Fibonacci {public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int n = sc.nextInt(); int []f = new int [n+2]; int [] count=new int [n+2]; f[1]=1; f[2]=1; for (int i = 3; i <=n; i++) { f[i]=(f[i-1]+f[i-2]); if(f[i]/10007>=1){ f[i]%=10007; } } System.out.println(f[n]); } }}

到此這篇關于Java實現Fibonacci取余的示例代碼的文章就介紹到這了,更多相關Java Fibonacci取余內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美日韩一区二区不卡三区 | 农村妇女色又黄一级毛片不卡 | 国产精品入口麻豆免费 | 国产一起色一起爱 | 在线中文天堂 | 国产综合精品在线 | 国产视频日韩 | 92国产视频| 亚洲六月丁香六月婷婷蜜芽 | 亚洲精品久久久久综合网 | 91桃子 | 欧美一级毛片美99毛片 | 亚洲精品一区二区三区四区五区 | 免费高清小黄站在线观看 | 国产亚洲人成在线影院 | 在线观看欧美一区 | 毛片毛片毛片毛片毛片毛片 | 成人爱爱爱欧美日本视频 | 成人欧美一区二区三区 | 谁有免费黄色网址 | 亚洲hh| 操一操| 亚洲国产精品久久久久秋霞66 | 中文字幕一级毛片视频 | 欧美成人h版整片合集 | 国产精品精品国产一区二区 | 久草福利免费 | 日本免费黄色网 | 亚洲欧洲一区二区三区 | 美女牲交毛片一级视频 | 色综合天天 | 一级黄色在线播放 | 国产精品三区四区 | 免费国产小视频 | 成人爱爱网站在线观看 | 国产younv交在线视频 | 国产精品lululu在线观看 | 黄色免费看片网站 | 日韩国产欧美精品综合二区 | 日韩不卡免费视频 | 视频在线观看一区二区 |