你的程序能做50000 吗?
自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
我是今天才注册的,也写了这个算法的代码,不过我不会算时间,请那位帮我算算时间,谢谢:
#include<stdio.h>
/*the max is 1144*/
main()
{ int intx;
/*printf("\nInput:");
scanf("%d",&intx);*/
for(intx=0;intx<50;intx++)
opt(1000);
}
opt(int x)
{ int res[3005],reslen,i,j,k,tmp;
res[1]=reslen=1;
for(i=1;i<=x;i++)
{ for(j=1;j<=reslen;j++)
res[j]*=i;
for(k=1;k<=reslen;k++)
if(res[k]>9)
{ tmp=res[k];
res[k]%=10;
if(k==reslen)
res[++reslen]=0;
res[k+1]+=tmp/10;
}
}
printf("\n");
/*for(i=reslen;i>=1;i--)
printf("%d",res[i]);*/
printf("\n\nLenth: %d",reslen);/*getch();*/
}