求大阶乘的位数
2010-05-20 21:12
204 查看
现由斯特林[striling]公式可得:
lnN!=NlnN-N+0.5ln(2N*pi)
而10的7次方阶乘的位数等于:
log10(N!)取整后加1
log10(N!)=lnN!/ln(10)
lnN!=NlnN-N+0.5ln(2N*pi)
而10的7次方阶乘的位数等于:
log10(N!)取整后加1
log10(N!)=lnN!/ln(10)
#include<iostream> #include<cmath> using namespace std; const double PI=3.14159265; int main() { int n,len,N; scanf("%d",&n); while(n--) { scanf("%d",&N); len=ceil((N*log(N)-N+log(2*N*PI)/2)/log(10)); //ceil求上界,即不小于某值的最小整数 //log在c语言里面是自然对数 printf("%d/n",len); } return 0; }
相关文章推荐
- HDU 1018 求阶乘的位数
- 菜鸟的大数阶乘的位数公式计算
- 求一个三位数个位,十位,百位的阶乘之和等于这个数
- Big Number(求任意阶乘的位数)
- hdu1018大数阶乘的位数,斯特林数的各种应用
- hdu 1018 阶乘位数
- 求阶乘的位数
- 求N的阶乘的位数
- 阶乘位数—Big Number
- POJ 1423 大数阶乘位数
- 大数阶乘(还有不明白的地方——输出部分、计算位数公式)
- POJ 1423 Big Number 大数阶乘的位数计算
- 大数---阶乘位数问题
- HDOJ1018 Big Number(斯特林公式求阶乘位数)
- 阶乘的位数
- HDU 1018 Big Number【阶乘位数】
- 求满足条件n=a!+b!+c!的所有三位数n 并输出,要求用自定义函数实现求阶乘(穷举法)
- OJ上关于阶乘位数的公式
- 求这样一个三位数,该三位数等于其每位数字的阶乘之和
- 斯特林大数公式求阶乘位数