首页 > 其他 > 详细

杭电1042

时间:2016-11-13 17:06:03      阅读:219      评论:0      收藏:0      [点我收藏+]
 1 #include<stdio.h>
 2 #include<string.h>
 3 long long a[10000];
 4 const int maxn = 1e9;
 5 int main()
 6 {
 7     int n,i,j,len=0;
 8     while(~scanf("%d",&n))
 9     {
10         memset(a,0,sizeof a);
11         for(i=2,a[0]=1,len=1; i<=n; ++i)
12         {
13             for(j=0; j<=len; ++j)
14             {
15                 if(j)
16                 {
17                     a[j]=a[j]*i+a[j-1]/maxn;
18                     a[j-1]%=maxn;
19                 }
20                 else
21                     a[j]*=i;
22             }
23             if(a[len])
24                 len++;
25         }
26         for(i=len-1; i>=0; --i)
27             if(i==len-1)
28                 printf("%lld",a[i]);
29             else
30                 printf("%09lld",a[i]);
31         printf("\n");
32     }
33 }

 

杭电1042

原文:http://www.cnblogs.com/qq188380780/p/6058716.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!