得出简单的计算公式后便可直接算出了
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;
	}
}