题目传送门:HDUOJ 2018:母牛的故事
动态规划:小牛在出生后第四年成为大牛就可产仔了,所以说三年前就已经存在的牛,在三年后(也就是在今年)一定会产仔。
#include <iostream>
#include <memory.h>
using namespace std;
int n, f[60];
int dp(int i)
{
if (f[i] > 0) return f[i];
return f[i] = dp(i-1) + dp(i-3);
}
int main()
{
while (cin >> n) {
if (0 == n)
break;
memset(f, 0, sizeof(f));
f[1] = 1; f[2] = 2; f[3] = 3; f[4] = 4;
cout << dp(n) << endl;
}
return 0;
}