10359

#include <iostream>
#include <cstdio>

using namespace std;

int f[260][1000];
int length[260];
void init()
{
	for(int i=0;i<260;i++)
	{
		length[i]=0;
		for(int j=0;j<1000;j++)
			f[i][j]=0;
	}
}
int main()
{
	int n,j,cary,begn;
	init();
	f[0][0]=1;
	f[1][0]=1;
	for(int i=2;i<260;i++)
	{
		cary=0;
		for(j=0;j<1000;j++)
		{
			f[i][j]=(f[i-1][j]+2*f[i-2][j]+cary)%10;
			cary=(f[i-1][j]+2*f[i-2][j]+cary)/10;
		}
		if(cary!=0)
		f[i][j]=cary;
	}
	while(scanf("%d",&n)!=EOF)
	{
		for(int i=999;i>=0;i--)
		{
			if(f[n][i])
			{
				begn=i;
				break;
			}
		}
		for(int i=begn;i>=0;i--)
			printf("%d",f[n][i]);
		printf("\n");
	}
	return 0;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *