#include<bits/stdc++.h>
using namespace std;
int a[1000000];
int main(){
int n;
cin>>n;
a[1]=1;
a[2]=1;
for(int i=1;i<=n;i++){
if(i>=3){
a[i]=a[i-2]+a[i-1];
}
}
cout<<a[n];
return 0;
}
先设定两个项,然后就可以执行斐波那契数列求第n项了。
#include<bits/stdc++.h>
using namespace std;
long long fbnq(int n){
if(n==1||n==2) return 1;
else return fbnq(n-1)+fbnq(n-2);
}
int main(){
int n;
cin>>n;
cout<<fbnq(n);
return 0;
}
递归中去掉两个特殊项,然后开始(n-1)+(n-2)递归……如此如此
下次下周再更新吧^o^,见谅,本人要上学……