YT03-遞推求解課後題目-1001 母牛的故事-(6.7日-煙臺大學ACM預備隊解題報告)
母牛的故事
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 65 Accepted Submission(s) : 41
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
有一頭母牛,它每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。請程式設計實現在第n年的時候,共有多少頭母牛?
Input
輸入資料由多個測試例項組成,每個測試例項佔一行,包括一個整數n(0<n<55),n的含義如題目中描述。
n=0表示輸入資料的結束,不做處理。
n=0表示輸入資料的結束,不做處理。
Output
對於每個測試例項,輸出在第n年的時候母牛的數量。
每個輸出佔一行。
每個輸出佔一行。
Sample Input
2 4 5 0
Sample Output
2 4 6
Author
Source
C語言程式設計練習(三)
計143-1
鞏聖躍
根據題意,先列出前幾年的牛頭數,試著找找規律:
第n年:
|
n=1 |
n=2 |
n=3 |
n=4 |
n=5 |
n=5 |
n=6 |
n=7 |
n=8 |
F(n)頭牛? |
F1=1 |
F2=2 |
F3=3 |
F4=4 |
F5=6 |
F6=9 |
F7=13 |
F8=19 |
F9=28 |
在列出這個序列的過程中,應當能找出規律。
以n=6為例,fn=9頭牛可以分解為6+3,其中6是上一年(第5年)的牛,3是新生的牛(因為第3年有3頭牛,這3頭在第6年各生一頭牛)。
我們可以得出這樣一個公式:fn=fn-1+fn-3
再理解一下,fn-1是前一年的牛,第n年仍然在,fn-3是前三年那一年的牛,但換句話說也就是第n年具有生育能力的牛,也就是第n年能生下的小牛數。
程式設計序,求解這個公式就行了。
當然,第1-3年的數目,需要直接給出。
#include<iostream>
using namespace std;
int main()
{
int f(int);
int a;
while(cin>>a&&a!=0)
{
cout<<f(a)<<endl;
}
return 0;
}
int f(int i)
{
int c;
if(i==1) c=1;
else if(i==2) c=2;
else if(i==3) c=3;
else if(i==4) c=4;
else c=f(i-1)+f(i-3);
return c;
}
相關文章
- YT03-遞推求解課堂題目-1001 蟠桃記-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課後題目-1002 超級樓梯-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課堂題目-1005 Children’s Queue-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課堂題目-1002 折線分割平面-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課堂題目-1004 不容易系列之一-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課後題目-1006 不容易系列之(4)——考新郎-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課後題目-1003 不容易系列之(3)—— LELE的RPG難題-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課後題目-1001—FatMouse's Speed-(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課後題目-1004—Max Sum -(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT03-遞推求解課堂題目-1003 獻給杭電五十週年校慶的禮物-(6.7日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課後題目-1003—免費餡餅 -(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課堂題目-1003—數塔-(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT06-揹包-1001—Bone Collector -(6.27日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課堂題目-1004—最少攔截系統-(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT05-動態歸劃求解課後題目-1002—Super Jumping! Jumping! Jumping! -(6.21日-煙臺大學ACM預備隊解題報告)ACM
- YT04-貪心課堂練習-1001 今年暑假不AC-(6.14日-煙臺大學ACM預備隊解題報告)ACM
- YT04-貪心課後練習-1004—迷瘴-(6.14日-煙臺大學ACM預備隊解題報告)ACM
- YT04-貪心課後練習-1006—PAINTER(6.14日-煙臺大學ACM預備隊解題報告)AIACM
- YT04-貪心課後練習-1002—Repair the Wall-(6.14日-煙臺大學ACM預備隊解題報告)AIACM
- YT04-貪心課堂練習-1004—Fire Net-(6.14日-煙臺大學ACM預備隊解題報告)ACM
- YT04-貪心課堂練習-1005—Wooden Sticks-(6.14日-煙臺大學ACM預備隊解題報告)ACM
- YT06-揹包-1002—Piggy-Bank -(6.27日-煙臺大學ACM預備隊解題報告)ACM
- YT04-貪心課後練習-1003—悼念512汶川大地震遇難同胞——老人是真餓了-(6.14日-煙臺大學ACM預備隊解題報告)ACM
- YT06-揹包-1003—悼念512汶川大地震遇難同胞——珍惜現在,感恩生活 -(6.27日-煙臺大學ACM預備隊解題報告)ACM
- C語言遞迴之母牛的故事C語言遞迴
- 河南理工大學程式設計(ACM)大賽解題報告程式設計ACM
- 杭電ACM hdu 2079 選課時間 解題報告(母函式)ACM函式
- ACM(遞迴遞推—A)ACM遞迴
- 樹遞迴問題的求解遞迴
- 大學畢業課題研究開題報告PPT分享-20套可下載
- NYNU ACM 藍橋杯選拔賽 解題報告ACM
- 山東省第四屆acm解題報告(部分)ACM
- ACM(遞迴遞推—I)ACM遞迴
- 青年大學習第十季第五期題目和答案(含課後習題)
- 杭電ACM hdu 2152 Fruit 解題報告(母函式)ACMUI函式
- c++求解獎券題目C++
- 測試面試題目求解答面試題
- 杭電ACM hdu 1398 Square Coins 解題報告(母函式)ACM函式