#include<stdio.h>
int a[1002][6000],len[6000];
int main()
{
a[1][0]=1;
a[2][0]=2;
a[3][0]=4;
a[4][0]=7;
len[1]=len[2]=len[3]=len[4]=1;
int i,j,c,n;
for(i=5;i<=1000;i++)
{
c=0;len[i]=len[i-1]; //len[i]表示a[i]数的字长度
for(j=0;j<len[i];j++)
{
a[i][j]=a[i-1][j]+a[i-2][j]+a[i-4][j]+c; //主要的
c=a[i][j]/10;
a[i][j]%=10;
if(c&&len[i]==j+1) //当j+1等于len[i],并且需要进位时,len[i]就加1
len[i]++;
}
} while(scanf("%d",&n)==1) { for(i=len[n]-1;i>=0;i--) printf("%d",a[n][i]); printf("\n"); } return 0; }