Stirling 公式

即:

Stirling公式的意义在于:当n足够大时,n!计算起来十分困难,虽然有很多关于n!的等式,但并不能很好地对阶乘结果进行估计,尤其是n很大之后,误差将会非常大。但利用Stirling公式可以将阶乘转化成幂函数,使得阶乘的结果得以更好的估计。而且n越大,估计得越准确。

利用Stirling公式求解n!的位数:易知整数n的位数为[lgn]+1。利用Stirling公式计算n!结果的位数时,可以两边取对数,得:

故n!的位数为:

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define PI 3.1415926535898
#define e 2.718281828459
using namespace std  ;
const int MAX = 100 ;
typedef long long LL  ;
int main(){// n! 的位数log(n!)+ 1int  n;scanf("%d",&n);LL ans;ans=log10(2.0*PI*n)/2.0+n*log10(n/e)+1;printf("%lld\n",ans);return 0 ;
}

Stirling公式 求n! 的位数相关推荐

  1. poj 1423 stirling公式(阶乘的位数)

    题意:给定一个数(小于10^7),求这个数阶乘的位数. 思路:首先,求一个数n的位数可以用log10(n)向上取整来得到(10的整数次幂要特殊判断).所以所求由log10(1)+log10(2)+lo ...

  2. POJ_1423(Stirling公式)

    求大数位数:log10()函数,本题规模太大,阶乘用Stirling公式求 Stirling公式: n! = ((2pin)(1/2))*((n/e)n); 前提是n > 3 由此可以导出: l ...

  3. Stirling公式(pku1423)

    Stirling 公式 即: Stirling公式的意义在于:当n足够大时,n!计算起来十分困难,虽然有很多关于n!的等式,但并不能很好地对阶乘结果进行估计,尤其是n很大之后,误差将会非常大.但利用S ...

  4. 【数论】斯特林公式 ——Stirling公式(取N阶乘近似值)

    斯特灵公式是一条用来取n阶乘近似值的数学公式.一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特灵公式十分好用.从图中可以看出,即使在n很小的时候,斯特灵公式的取值已经十分准确. 公式为:    ...

  5. 斯特林公式 ——Stirling公式(取N阶乘近似值)(转)

    斯特灵公式是一条用来取n阶乘近似值的数学公式.一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特灵公式十分好用.从图中可以看出,即使在n很小的时候,斯特灵公式的取值已经十分准确. 公式为:    ...

  6. Stirling公式【求解N!的位数】

    一.定义 斯特林公式(Stirling's approximation)是一条用来取n的阶乘的近似值的数学公式.一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特林公式十分好用,而且,即使在n很 ...

  7. 用Stirling公式的应用

    /* 求m!的位数,1<=m<=10^7.时间1s. 使用Stirling公式进行求解  n!~~~~~~(n/e)^n(2*pi*n)^(1/2) */ #include<iost ...

  8. 第一,二类斯特林数 Bell数 Stirling公式

    斯特林数是组合数学的内容. 第一类斯特林数可以处理下面的问题:把N个不同元素分为k个环,每个环非空,问有多少分法,记为S(p,k), S(p,p)=1 S(p,0)=0 递推公式为:S(p,k)=(p ...

  9. [BZOJ3000] Big Number (Stirling公式)

    Description 给你两个整数N和K,要求你输出N!的K进制的位数. Input 有多组输入数据,每组输入数据各一行,每行两个数--N,K Output 每行一个数为输出结果. Sample I ...

最新文章

  1. 动态变量和静态变量的区别,堆和栈的区别
  2. 部署虚拟环境安装Linux系统(Linux就该这么学)笔记
  3. 2021年高考成绩什么时候查询辽宁,2021年辽宁高考成绩什么时候几点可以查
  4. bug5-os.environ无效
  5. oracle数据库sga用途_oracle数据库的SGA和PGA,及分配指导
  6. React使用详解(学习笔记)
  7. java 医院病历号怎么生成_java病历管理系统
  8. 绘图杂记【1】Python、R等绘图
  9. Pr:Lumetri 颜色
  10. 阿里巴巴社招笔试题——多线程打印(2)
  11. tcl 950 android 7,TCL 950测评:商务旗舰手机界的一股清流
  12. 竞价推广方案怎么写,这些点你get到了吗?
  13. 参加Google Developer Day 2009归来,互联网营销
  14. 相干信号与非相干信号
  15. 【Python面试题】-元类
  16. skywalking agent 导致内存泄漏的一些问题
  17. php相册管理系统实验总结,【美优 php 单用户相册管理系统怎么用】美优 php 单用户相册管理系统好不好_使用技巧-ZOL软件百科...
  18. RESTFUL API API身份认证
  19. 物联网平台是什么,怎么选择合适的物联网平台?
  20. android 前后同时预览_vivo Android 11开发者预览版上线,抢先适配快人一步!

热门文章

  1. easyui datagrid 显示未知结构的数据
  2. 斯坦福句法分析 java_斯坦福句法分析
  3. 工作一年后的某些心情
  4. ofo该何去何从?投入阿里的怀抱还是腾讯?
  5. Cad二次开发添加图形到数据库
  6. redis 6379端口不通解决方法
  7. 电视该怎么选择,选传统液晶还是选OLED,哪个牌子比较好?
  8. some keywords
  9. Android中使用log4j2
  10. 你所浪费的今天,是昨天死去的人奢望的明天;你所厌恶的现在,是未来的你回不去的曾经。