母牛的故事只要掌握计算公式就比较简单,如:
总头数 新生牛
第一年:1 0
第二年:2 1
第三年:3 1
第四年:4 1
第五年:6 2
第六年:9 3
第七年:13 4
第八年:19 6
第九年:28 9
第十年:41 13
容易看出这是一个数组,且a[i] = a[i - 1] + a[i - 3],这样就变成了一个简单的问题。
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n, a[100];
while (cin >> n)
{
if (n != 0)
{
for (int i = 1; i <= n; i ++)
{
if (i >= 1 && i <= 4)
a[i] = i;
else
{
a[i] = a[i -1] + a[i - 3];
}
}
cout << a[n] << endl;
}
else continue;
}
system ("pause");
return 0;
}