大数的阶乘
来源:互联网 发布:淘宝网店客服怎么设置 编辑:程序博客网 时间:2024/05/22 15:28
我们以1000为例,为了保存结果,需要先分析1000!有多大。大约为4*10的2567次方,因此可以用一个3000个的元素的数组f保存。为了方便进位,我们让f[0]保存各位,f[1]保存十位。。。。。。在输出时要忽略前导0。4!=24,那么从f[2]~f[1000]都为0需要忽略输出。
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<algorithm> 5 using namespace std; 6 const int maxn=3000; 7 int f[maxn]; 8 int main() 9 {10 int i,j,n;11 while(cin>>n)12 {13 memset(f,0,sizeof(f));14 f[0]=1;15 for(i=2;i<=n;i++)16 {17 int c=0;18 for(j=0;j<maxn;j++)19 {20 int s=f[j]*i+c;21 f[j]=s%10;22 c=s/10;23 }24 }25 for(j=maxn-1;j>=0;j--)26 if(f[j])break;//忽略前导027 for(i=j;i>=0;i--)28 cout<<f[i];29 cout<<endl;30 }31 return 0;32 }
阅读全文
0 0
- 大数阶乘-N的阶乘
- 大数的阶乘
- 模块化的大数阶乘
- mr 的大数阶乘
- 大数阶乘的算法
- 大数的阶乘
- 大数的阶乘算法
- 大数的阶乘
- 大数阶乘的求法
- 大数的阶乘
- 大数阶乘的代码
- 大数n的阶乘
- 大数的阶乘算法
- 大数的阶乘
- 大数的阶乘
- 大数n的阶乘
- 大数阶乘的实现
- 大数阶乘的实现
- StringBuffer 和 StringBuilder 的区别
- oracle获取随机记录
- mysql5.7以下 json字段处理
- spring 插入mysql数据的中文编码问题
- @ACTION中 params 的配置
- 大数的阶乘
- 输出一个整数的每一位
- Struts2 下载文件
- ublime Text3配置在可交互环境下运行python快捷键
- oracle 一次插入多条
- java多线程
- java HSSF 读取 excel
- BLE-NRF51822教程4-串口BLE解析
- java hssf 写 excle