69,364
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#define SIZE 8000
#define DS 7998
unsigned x[SIZE],n,p,i,j,t;
int main(void)
{
while(scanf("%d",&n)!=EOF)
{
p=DS; x[DS]=1; x[DS+1]=0;
for(i=1;i<=n;i++)
{
p--; x[p]=0; p--; x[p]=0;
for(j=DS;j>p;j--)
{
x[j]*=i; t=j+1;
x[j]+=x[t]/100000;
x[t]%=100000;
}
while(!x[p]) p++;
}
printf("%u",x[p]); p++;
for(;p<SIZE-1;p++)
printf("%05u",x[p]);
printf("\n");
}
return 0;
}
100!=93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697
920827223758251185210916864000000000000000000000000