HDUOJ 2018 母牛的故事(动态规划入门)
得出简单的计算公式后便可直接算出了
solution:
#include <bits/stdc++.h>
using namespace std;
int dp[60];
int f(int n)
{
if (dp[n])return dp[n];
return dp[n] = f(n - 1) + f(n - 3);
}
int main()
{
int n;
dp[1] = 1, dp[2] = 2, dp[3] = 3, dp[4] = 4;
while (cin >> n)
{
if (!n)return 0;
cout << f(n) << endl;
}
}