1204:爬楼梯
时间限制: 1000 ms 内存限制: 65536 KB
【题目描述】
树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。
例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3种方法。
【输入】
输入包含若干行,每行包含一个正整数N,代表楼梯级数,1≤N≤30。
【输出】
不同的走法数,每一行输入对应一行输出。
【输入样例】
5
8
10
【输出样例】
8
34
89
【来源】
No
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int a[101]={0};
int lt(int n)
{
if(a[n]!=0) return a[n];
if(n==1) return a[1]=1;
else if(n==2) return a[2]=2;
else return a[n]=lt(n-1)+lt(n-2);
}
int main()
{
int n;
while(scanf("%d",&n)!=-1)
cout<<lt(n)<<endl;
return 0;
}