问题描述:
假设你现在正在爬楼梯,楼梯有 n 级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部?
输入格式:
第一行输入一个整数 n(1≤n≤50),代表楼梯的级数。
输出格式:
输出爬到楼梯顶部的方法总数。
样例输入: 5
样例输出 : 8
/*假如有一层楼梯,那就只有一种方案。两层楼梯2种。3层楼梯时,先走一步,剩下两层我们算过了就是2;先走2步,剩下一层我们也算过了就是1!于是,3层有3种,4层有5种,5层有8种... 这就是斐波那契数列*/ //爬楼梯,斐波那契数列 #include<iostream> using namespace std; int main(){ int n; cin>>n; int a[55]; a[0]=0; a[1]=1; a[2]=2; for(int i=3;i<=n;i++){ a[i]=a[i-1]+a[i-2]; } cout<<a[n]<<endl; return 0; }