国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java實(shí)現(xiàn)Fibonacci(斐波那契)取余的示例代碼

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

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

當(dāng)n比較大時(shí),F(xiàn)n也非常大,現(xiàn)在我們想知道,F(xiàn)n除以10007的余數(shù)是多少。

Input多組測(cè)試數(shù)據(jù)

輸入包含一個(gè)整數(shù)n。1 <= n <= 1,000,000。

Output每組輸出一行,包含一個(gè)整數(shù),表示Fn除以10007的余數(shù)。

Sample Input1022

Sample Output557704

利用余數(shù)三大定理:

1.余數(shù)的加法定理

a與b的和除以c的余數(shù),等于a,b分別除以c的余數(shù)之和,或這個(gè)和除以c的余數(shù)。

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

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

當(dāng)余數(shù)的和比除數(shù)大時(shí),所求的余數(shù)等于余數(shù)之和再除以c的余數(shù)。

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

2.余數(shù)的乘法定理

a與b的乘積除以c的余數(shù),等于a,b分別除以c的余數(shù)的積,或者這個(gè)積除以c所得的余數(shù)。

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

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

當(dāng)余數(shù)的和比除數(shù)大時(shí),所求的余數(shù)等于余數(shù)之積再除以c的余數(shù)。

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

3.同余定理

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

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

若兩個(gè)數(shù)a,b除以同一個(gè)數(shù)m得到的余數(shù)相同,則a,b的差一定能被m整除

用式子表示為:如果有a≡b ( mod m ),那么一定有a-b=mk,k是整數(shù),即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]); } }}

到此這篇關(guān)于Java實(shí)現(xiàn)Fibonacci取余的示例代碼的文章就介紹到這了,更多相關(guān)Java Fibonacci取余內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 印江| 古田县| 揭东县| 鄢陵县| 萨嘎县| 南靖县| 灌阳县| 涪陵区| 浪卡子县| 福建省| 花垣县| 北票市| 阜新市| 久治县| 资讯 | 岱山县| 永安市| 灵山县| 襄汾县| 河北省| 许昌市| 连城县| 手机| 霸州市| 沁水县| 汪清县| 新干县| 黑山县| 靖安县| 灵台县| 乐东| 徐水县| 桦川县| 佳木斯市| 临夏县| 孙吴县| 牙克石市| 五家渠市| 安康市| 东乡县| 青田县|