树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数
例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级
也可以第一次走两级,第二次走一级,一共3种方法。
5 8 10Sample Output
8 34 89
#include <stdio.h>
int stair(int n)
{
if(n <= 2)
return n;
else
return cow(n-1) + cow(n-2);
}
int main(void)
{
int n;
while(scanf("%d", &n) != EOF) {
// 判定结束条件
if(n == 0)
break;
// 计算并输出结果
printf("%d\n", stair(n));
}
return 0;
}
#include <stdio.h>
#define MAXN 30
typedef unsigned long long ULL;
ULL fn[MAXN+1];
void setfn()
{
int i;
fn[1] = 1;
fn[2] = 2;
for(i=3; i<=MAXN; i++)
fn[i] = fn[i-2] + fn[i-1];
}
int main(void)
{
int a;
//打表
setfn();
while(~scanf("%d", &a))
// 输出结果
printf("%lld\n", fn[a]);
return 0;
}