#include <stdio.h>
int a[1001][101]={0};
int main()
{
int n,i,j,k=0;
a[0][1]=a[1][1]=1;
a[2][1]=2;
a[3][1]=4;
for ( i=4;i<1001;i++)
{
for (j=1;j<101;j++)
{
a[i][j]+=a[i-1][j]+a[i-2][j]+a[i-4][j];
a[i][j+1]=a[i][j]/10000000;
a[i][j]%=10000000;
}
}
while(~scanf("%d",&n))
{
j=100;//勿忘
while(!a[n][j]) j--;
printf("%d",a[n][j--]);
for (;j>0;j--)
{
printf("%07d",a[n][j]);
}
printf("\n");
}
return 0;
}
简单的递推加大数问题
HDU 1297 Children’s Queue
最新推荐文章于 2021-04-08 08:16:48 发布