大数阶乘——————数组模拟
来源:互联网 发布:php授权码怎么做 编辑:程序博客网 时间:2024/05/21 20:28
突然发现大数阶乘还能用这么简单的数组模拟,但是感觉复杂度好像有点高,一次运算是n*MAXN的复杂度,虽然空间复杂度比较低。
#include<stdio.h>#include<string.h>const int MAXN = 50000;int main() { int n; scanf ( "%d", &n ); int f[MAXN]; memset ( f, 0, sizeof ( f ) ); f[0] = 1; for ( int i = 2; i <= n; i++ ) { //遍历2-n int c = 0; //记录进位 for ( int j = 0; j < MAXN; j++ ) { //f[]记录乘出来的结果f[0],f[1]分别记录个位十位的值 int s = f[j] * i + c; //暂存各个位的结果 f[j] = s % 10; c = s / 10; } } int i; for ( i = MAXN - 1; i >= 0; i-- ) //忽略前导零 if ( f[i] != 0 ) { break; } for ( int j = i; j >= 0; j-- ) { printf ( "%d", f[j] ); } printf ( "\n" ); return 0;}
0 0
- 大数阶乘——————数组模拟
- 大数问题——大数阶乘
- 大数运算(7)——大数阶乘(求阶乘)
- 大数存储——阶乘
- 大数阶乘——POJ 1423
- ACM模板——大数阶乘
- hdu 1042(大数——阶乘)
- 大数——10000以内的阶乘
- 1.精度计算——大数阶乘
- NYOJ——28 大数阶乘
- C++实现——大数阶乘
- 大数运算——阶乘-40!
- C语言——大数阶乘
- acm练习题——大数阶乘
- 杭电—1042 大数阶乘 N!
- 大数运算 (四)—— 大数阶乘
- 大数运算(6)——大数阶乘(求位数)
- 高精度运算——大数阶乘、排列、组合
- Android 中Touch(触屏)事件传递机制
- maven的安装配置
- 堆heap与栈stack区别
- Java双重循环实现任意字符串中提取数字子串
- 从字体文件中获取字体名字
- 大数阶乘——————数组模拟
- jquery.ready与window.onload执行顺序
- MFC上显示GIF图片(使用 GIF Animation Control控件)
- 启动eclipse弹出“Failed to load the JDI shared library.”
- 看看你的系统几岁了
- 自己的第一个html
- Struts2中的ModelDriven机制及其运用
- Problem When use "Custom Editor" and "Property Drawers" The Same Time
- group_concat出现问题被截断怎么办?