大数阶乘
来源:互联网 发布:007支票打印软件 编辑:程序博客网 时间:2024/04/30 08:14
时间限制:3000 ms | 内存限制:65535 KB
难度:3
- 描述
- 我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?
- 输入
- 输入一个整数m(0<m<=5000)
- 输出
- 输出m的阶乘,并在输出结束之后输入一个换行符
- 样例输入
50
- 样例输出
30414093201713378043612608166064768844377641568960512000000000000
<pre name="code" class="html"><span style="font-size:18px;">思路:如果用普通的方法,此题肯定超时,我们不妨将得到的结果放在一个一维数组中,阶乘,我们一步一步的从2一直乘到N,把每一次求到的结果放在数组中,这样就不会出现内存泄漏和超时的问题了#include<stdio.h>#include<string.h>#define Max 100001int a[Max]; int main(void){int i,j,lon;int temp,w,n;scanf("%d",&n);memset(a,0,sizeof(a));a[1]=1;lon=1;for(i=2;i<=n;i++){w=0;for(j=1;j<=lon;j++){temp=a[j]*i+w;a[j]=temp%10;w=temp/10;if(j>=lon&&w!=0){lon++;}}}for(j=lon;j>=1;j--){printf("%d",a[j]);}printf("\n");return 0;} </span>
0 0
- 大数阶乘
- 大数阶乘。
- 大数阶乘
- ~阶乘~大数
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘
- 大数阶乘!!
- 大数阶乘
- 大数阶乘
- 大数阶乘
- ACdream 1121 喵喵的IDE
- 编码的世界
- file_put_contents
- leetcode: Jump Game
- Android Notification通知详解
- 大数阶乘
- 《白帽子讲web安全》笔记之认证与授权那些事
- Binary Tree Zigzag Level Order Traversal
- ajax异步上传文件
- 工厂模式
- 安装mysql 出现:Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
- beorjy244217beorjybeorjy
- 世界杯最野蛮大战,巴西付出惨重代价步入四强
- 按位与、或、异或等运算方法