九度OJ 題目1122:喫糖果



一.題目描述:
名名的媽媽從外地出差回來,帶了一盒好喫又精美的巧克力給名名(盒內共有 N 塊巧克力,20 > N >0)。
 媽媽告訴名名每天可以喫一塊或者兩塊巧克力。
 假設名名每天都喫巧克力,問名名共有多少種不同的喫完巧克力的方案。
 例如:
 如果N=1,則名名第1天就喫掉它,共有1種方案;
 如果N=2,則名名可以第1天喫1塊,第2天喫1塊,也可以第1天喫2塊,共有2種方案;
 如果N=3,則名名第1天可以喫1塊,剩2塊,也可以第1天喫2塊剩1塊,所以名名共有2+1=3種方案;
 如果N=4,則名名可以第1天喫1塊,剩3塊,也可以第1天喫2塊,剩2塊,共有3+2=5種方案。
 現在給定N,請你寫程序求出名名喫巧克力的方案數目。
輸入:
輸入只有1行,即整數N。
輸出:
可能有多組測試數據,對於每組數據,
 輸出只有1行,即名名喫巧克力的方案數。
樣例輸入: 4
樣例輸出: 5

二.題目分析

  斐波那契數列的應用,遞歸。

三.代碼

#include <stdio.h>
#include <stdlib.h>
int f(int n)
{
    if(n==1)
        return 1;
    if(n==2)
        return 2;
    return f(n-1)+f(n-2);
}
int main()
{
    int n;
   
    while(scanf("%d",&n)!=EOF)
    {
        printf("%d\n",f(n));
    }
    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章