一:題幹:
小x是個斐波那契數迷。是如此的酷愛這個數列,每每看到這個數列就會高興得手舞足蹈。因此想知道很多關於這個數列的東西,比方說第n個斐波那契數是多少啊,前n項的和是多少啊,如何用若干個斐波那契數的和表示乙個自然數啊之類的。今天希望知道的是:第n個斐波那契數的末尾一位是多少? 記pf[n]表示第n個斐波那契數, pf[1] =pf[2] = 1, pf[n] = pf[n‒ 1] + pf[n ‒ 2] (n > 2)。
對於30%的資料滿足,0 輸入格式:
乙個整數n表示第n項。
輸出格式:
僅一行,即想知道的第n個斐波那契數的最後一位。
輸入樣例:
在這裡給出一組輸入。例如:
輸出樣例:
2二:分析:
看到這個超級大的n範圍就肯定不能用常規方法了 肯定會超時的
但是只要明白斐波那契數列每60個項的個位的數字是一迴圈就很容易做出來
三:**:
#include
using
namespace std;
int c[
100]
;//儲存60一迴圈的斐波那契數列
intmain()
if(n==
0)cout<<0;
else
cout<%10
;return0;
}
這樣即使是非常大的數字也能秒出答案 求斐波那契數列
一 用陣列求取斐波那契數列第n項的數值 非遞迴 斐波那契數列求取思想 第n項 第n 1項 第n 2項 function getvalue n var j 0 while j n 1 return arr j else alert getvalue 8 求第八項的值 二 使用遞迴求取第n項的值 fun...
程式設計求斐波那契數列
fibonacci sequence recursive algorithm def fib n if n 1or n 2 return 1else return fib n 1 fib n 2 這是很樸素的思想,是一種從上到下的方法,但是重複計算了很多之前計算過的結果,時間複雜度是指數級.具體為 ...
求斐波那契數列的第n項
斐波那契數列的定義如下 f 0 0 f 1 1 f n f n 1 f n 2 n 2 1,1,2,3,5,8,13,21,34,55,89,144,233,377,給出n,求f n 由於結果很大,輸出f n 1000000009的結果即可。input 輸入1個數n 1 n 10 18 output...