杭電2018母牛的故事
阿新 • • 發佈:2017-05-06
處理 代碼 [1] out ++ program clas desc col
n=0表示輸入數據的結束,不做處理。 output 對於每個測試實例,輸出在第n年的時候母牛的數量。
每個輸出占一行。 sample input 2 4 5 0 sample output 2 4 6 不多說,代碼奉上
int main()
{
int n,a[60];
while (cin >> n&&n)//輸入n&&n表示n不等於零
{
a[1] = 1;
a[2] = 2;
a[3] = 3;
a[4] = 4;
for (int i = 5; i < 60; i++)
a[i] = a[i - 1] + a[i - 3];//當年的牛的數量等於去年牛的數量加上去年可以生小母牛的母牛的數量,而去年可以生小母牛的數量等於三年前的母牛的數量
cout << a[n] << endl;
}
return 0;
}
program description
有一頭母牛,它每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。請編程實現在第n年的時候,共有多少頭母牛?
input
輸入數據由多個測試實例組成,每個測試實例占一行,包括一個整數n(0<n<55),n的含義如題目中描述。
n=0表示輸入數據的結束,不做處理。 output 對於每個測試實例,輸出在第n年的時候母牛的數量。
每個輸出占一行。 sample input 2 4 5 0 sample output 2 4 6 不多說,代碼奉上
#include<iostream>
using namespace std;
int main()
{
int n,a[60];
while (cin >> n&&n)//輸入n&&n表示n不等於零
{
a[1] = 1;
a[2] = 2;
a[3] = 3;
a[4] = 4;
for (int i = 5; i < 60; i++)
a[i] = a[i - 1] + a[i - 3];//當年的牛的數量等於去年牛的數量加上去年可以生小母牛的母牛的數量,而去年可以生小母牛的數量等於三年前的母牛的數量
cout << a[n] << endl;
}
return 0;
}
杭電2018母牛的故事