AHU_OJ 08

Description
Redraiment小时候走路喜欢蹦蹦跳跳,他最喜欢在楼梯上跳来跳去。 
但年幼的他一次只能走上一阶或者一下子蹦上两阶。 
现在一共有N阶台阶,请你计算一下Redraiment从第0阶到第N阶共有几种走法。

Input

输入包括多组数据。 
每组数据包括一行:N(1≤N≤40)。 
输入以0结束。
 
Output
对应每个输入包括一个输出。 
为redraiment到达第n阶不同走法的数量。

Sample Input

1
2
0
Sample Output
1
2


方法:其实就是求斐波那契数列.a[0]=1,a[1]=1,a[2]=2,a[3]=3......
#include "stdio.h"
#define NUM 100
int main()
{
    int f[NUM],n,ans,i;
    f[0]=f[1]=1;
    scanf("%d",&n);
    while(n != 0)
    {
        for(i=2;i<=n;i++)
        {
            f[i]=f[i-1]+f[i-2];
        }
        printf("%d\n",f[n]);
        scanf("%d",&n);
    }
    return 0;
}

 



 
posted @ 2014-02-09 23:46  brillliu  阅读(319)  评论(0编辑  收藏  举报