1. 程式人生 > >(遞歸)1944:吃糖果

(遞歸)1944:吃糖果

htm pan clas return 回來 main tro cin spa

描述

名名的媽媽從外地出差回來,帶了一盒好吃又精美的巧克力給名名(盒內共有 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

我の思考

這個題和之前的走樓梯其實是一樣的,代碼一樣的也可以提交成功( ?? ω ?? )。

傳送門在這裏:http://www.cnblogs.com/rimochiko/p/7499142.html

我の代碼

#include <iostream>
using namespace std;

int func(int n){
    if(n==1){
        return 1;
    }

    if(n==2){
        return 2;
    }

    
return func(n-1)+func(n-2); } int main() { int n; while(cin>>n){ cout<<func(n)<<endl; } return 0; }

(遞歸)1944:吃糖果