找规律时:要注重前后项的联系,可现设 带参数方程,再解方程,求参数!
#include<stdio.h>
#include<string.h>
int result[1001][501];
int main()
{
memset(result,0,sizeof(result));
int i,j,n,bit;
result[1][0]=0;
result[2][0]=result[3][0]=1;
for(i=4;i<=1000;i++)
{
bit=0;
for(j=0;j<=350;j++)
{
result[i][j]=result[i-1][j]+result[i-2][j]*2+bit;
bit=result[i][j]/10;
result[i][j]%=10;
}
}
bool flag;
while(scanf("%d",&n)==1)
{
if(n==1)
{
printf("0\n");
continue;
}
flag=false;
for(i=350;i>=0;i--)
{
if(result[n][i]!=0||flag)
{
printf("%d",result[n][i]);
flag=true;
}
}
printf("\n");
}
return 0;
}