演算法筆記 — 吃糖果
阿新 • • 發佈:2019-01-02
題目連結:http://codeup.cn/problem.php?cid=100000583&pid=0
題目描述
名名的媽媽從外地出差回來,帶了一盒好吃又精美的巧克力給名名(盒內共有 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行,即名名吃巧克力的方案數。
樣例輸入
1
2
4
樣例輸出
1
2
5
斐波那契數列。。。
#include<iostream> using namespace std; int f(int n){ if(n==1){ return 1; }else if(n==2){ return 2; }else{ return f(n-1)+f(n-2); } } int main(){ int n; while(cin>>n){ cout<<f(n)<<endl; } return 0; }