色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

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

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

瀏覽:84日期: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
相關文章:
主站蜘蛛池模板: 99精品视频在线 | 国产精品久久久久久久hd | 欧美成人手机视频免费播放 | 欧美视频精品在线观看 | 日本二区免费一片黄2019 | 午夜限制r级噜噜片一区二区 | 久久影院国产 | 日韩成人毛片高清视频免费看 | 最新国产三级在线不卡视频 | 日本三级香港三级乳网址 | 久草热线视频 | 亚洲高清中文字幕一区二区三区 | 成人小视频在线观看免费 | 国产在线毛片 | 中文国产成人精品久久96 | 在线看片a | 欧美视频xxxxx | 欧美一级一片 | 国产成人精选免费视频 | 一级特黄a免费大片 | 久久久久久a亚洲欧洲aⅴ | 亚洲综合成人在线 | www.日本在线 | 国产欧美成人免费观看视频 | 永久免费毛片手机版在线看 | 日韩精品亚洲专区在线观看 | 欧美精品一区二区三区在线 | 欧美高清一区二区 | 欧美色爱综合 | 日韩在线视频网址 | 国产欧美日韩三级 | 欧美在线一级毛片观看 | 亚洲日韩精品欧美一区二区一 | 小明台湾成人永久免费看看 | 国产美女野外做爰 | 18视频免费网站 | 美女拍拍拍爽爽爽爽爽爽 | 久久久精品影院 | 精品99在线观看 | 日韩18在线观看地址 | 日韩一区二区在线免费观看 |