日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

AOJ-AHU-OJ-401 Fibonacci GCD

發(fā)布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 AOJ-AHU-OJ-401 Fibonacci GCD 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Fibonacci & GCD Time Limit: 1000 ms???Case Time Limit: 1000 ms???Memory Limit: 64 MB ? Description Fibonacci數(shù)列之所以強大是因為它可以和很多東西結(jié)合,這次Fibonacci找來了GCD(最大公約數(shù))來和自己組合,這給我們帶來的問題是對于Fibonacci數(shù)列中的任意兩項F(m)和F(n),我們要求出它們的最大公約數(shù)

?

Input 輸入包括多組測試數(shù)據(jù),每行包括2個正整數(shù)m,n( 1 =< m,n =< 10^9)表示Fibonacci的第m,n項,輸入以 0 0 結(jié)束

?

Output 每組輸入對應(yīng)一個輸出即 GCD( F(m) , F(n) ),因為結(jié)果可能比較大,輸出其 mod 10003的值

?

Sample Input
OriginalTransformed
4 8 0 0

?

Sample Output
OriginalTransformed
3

?

Source Large的高精度 NO.4 ——————————————————————分割線—————————————————————— 思路:本題牽扯到斐波那契的兩個定理。一個是斐波那契作為初等函數(shù),尾數(shù)具有循環(huán)性,要找到循環(huán)節(jié)。利用循環(huán)節(jié),來極大地縮小需要存儲數(shù)據(jù)的數(shù)組大小。即優(yōu)化空間。所謂循環(huán)節(jié),就是從第i項和第i+1項開始尾數(shù)變成0和1。 另一個是最大公約數(shù)(GCD)定理。GCD( fib[n], fib[m] ) == fib[ GCD(n, m) ]。 代碼如下:

#include <stdio.h> int fib[5711]; int GCD(int a, int b){if(!b)return a;return GCD(b, a % b); } int main(){int m, n, g;int i;fib[0] = 1;fib[1] = 1;for(i = 2;;i++){fib[i] = (fib[i-1] + fib[i-2]) % 10003;if(fib[i-1] == 0&&fib[i] == 1)break;}i--;while(scanf("%d%d", &m, &n) != EOF&&m||n){g = GCD(m, n);g--;printf("%d\n", fib[g%i]);}return 0; }
?

總結(jié)

以上是生活随笔為你收集整理的AOJ-AHU-OJ-401 Fibonacci GCD的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。