1. 程式人生 > >ZZULIOJ【1091】童年生活二三事【斐波那契】

ZZULIOJ【1091】童年生活二三事【斐波那契】

1091: 童年生活二三事(多例項測試)

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 4299  Solved: 2457

SubmitStatusWeb Board

Description

Redraiment小時候走路喜歡蹦蹦跳跳,他最喜歡在樓梯上跳來跳去。
但年幼的他一次只能走上一階或者一下子蹦上兩階。
現在一共有N階臺階,請你計算一下Redraiment從第0階到第N階共有幾種走法。

Input

輸入包括多組資料。
每組資料包括一行:N(1≤N≤40)。
輸入以0結束

Output

對應每個輸入包括一個輸出。
為redraiment到達第n階不同走法的數量。

Sample Input

1
3
0

Sample Output

1
3

解析:
         如果不是博主找了規律,恐怕很難相信這居然是斐波那契數列。
         0 -----1     1
         0------2     2
         0------3     3
         0------4     5
         0------5     8


程式如下:
#include<cstdio>
int main()
{
    int a[1000],t,i;
    while((scanf("%d",&t)&&t!=0))
    {
        a[0]=1;
        a[1]=2;
        for(i=2;i<t;i++)
        {
           a[i]=a[i-1]+a[i-2];
        }
        if(t<2)
        printf("1\n");
        else
        printf("%d\n",a[i-1]);
    }  
    return 0;
}