#include<cstdio>
int
main()
{
int
dp[50]={0,1,2,4};
int
n, i;
while
(
scanf
(
"%d"
,&n)!=EOF)
{
if
(n==0)
break
;
for
(i=4;i<=n;i++)
{
dp[i]=dp[i-3]+dp[i-2]+dp[i-1];
}
printf
(
"%d\n"
,dp[n]);
}
return
0;
}
这题看似很难,但只要你慢慢的计算几次,就会总结出规律了。其实,在我们做题当中,就应该多罗列出各种情况,再从中慢慢的找出规律。