void F(){
f[1][0]=1;
f[2][0]=2;
f[3][0]=4;
f[4][0]=7;
int t=0;
// 核心代码:
for(int i=5;i<maxn;i++){
t=0;
for(int j=0;j<105;j++){
t=f[i-1][j]+f[i-2][j]+f[i-4][j]+t;
f[i][j]=t%10000;
t=t/10000;
}
}
}
输出时:
for(i=104;i>=0;i--){
if(f[n][i]!=0) break;
}
printf("%d",f[n][i]);
for(int j=i-1;j>=0;j--){
printf("%04d",f[n][j]);
}