(递归)斐波那契数列
生活随笔
收集整理的這篇文章主要介紹了
(递归)斐波那契数列
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目
f1=f2=1,fn=afn?1+bfn?2(n>2)f1=f2=1,f_n=af_{n-1}+bf_{n-2}(n>2)f1=f2=1,fn?=afn?1?+bfn?2?(n>2)
輸入包含四個整數(shù)n(1≤n≤100),a(1≤a≤10),b(1≤a≤10),p((1≤a≤2000)。n(1\leq n \leq 100),a(1\leq a \leq 10),b(1\leq a \leq 10),p((1\leq a \leq 2000)。n(1≤n≤100),a(1≤a≤10),b(1≤a≤10),p((1≤a≤2000)。
輸出fnf_nfn?對p取模的值
樣例輸入3 1 1 10000樣例輸出2
分析與解答:
n大,不能直接用遞歸,需要用遞推式轉(zhuǎn)移變量
#include<iostream> using namespace std; int main(){int n,a,b,p;cin>>n>>a>>b>>p;if(n==1||n==2) cout<<1;else{int c1=1,c2=1,c;for(int i=3;i<=n;++i){c=(a*c2+b*c1)%p;c1=c2;c2=c;}cout<<c; }return 0; }總結(jié)
以上是生活随笔為你收集整理的(递归)斐波那契数列的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (DFS+DP)滑雪(poj1088)
- 下一篇: 老年人自学计算机,老年人怎样学电脑?请问