如图,题目出处51nod,http://www.51nod.com/Challenge/Problem.html#problemId=1058

自然数n的位数为1+lg n舍去小数所得结果(以1234为例,lg 1234=3,1+3=4,4即是位数,其它类比),所以n!的位数为1+lg n!

对于lg n!有:

lgn!
=lg(1*2*3*……*n)
=lg1+lg2+lg3+……+lgn

注意:lg1,lg2,lg3……,lgn需要保留小数,而这些小数加和所得结果,要舍去小数

C++代码如下,AC耗时31ms:

#include <iostream>
#include <cmath>
using namespace std;int main() {double n,i,res=0;int ans;cin >> n;for(i=1;i<=n;i++) {res += log10(i);}ans = res+1;cout << ans;return 0;
}

N的阶乘的长度(不使用Stirling公式)相关推荐

  1. N的阶乘的长度 V2(斯特林近似) 51Nod - 1130

    题目: 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T ...

  2. 51Nod 1058 N的阶乘的长度

    输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 输入N(1 <= N <= 10^6) Output 输出N的阶乘的长度 Input示例 6 Outpu ...

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

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

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

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

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

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

  6. Stirling公式(pku1423)

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

  7. Stirling公式

    Stirling 公式 Stirling公式 1.阶乘 n!=n(n−1)(n−2)⋯×3×2×1(n≥1)n! = n(n-1)(n-2)\cdots\times3\times2\times1\qu ...

  8. Wallis公式Stirling公式Gamma函数

    Wallis公式 (!!是双阶乘,不超过这个整数且具有相同奇偶的正整数相乘,比如5!!=1×3×5, 6!!=2×4×6) 利用Wallis公式推导Stirling公式 斯特林公式是一条用来取n阶乘近 ...

  9. Stirling公式 求n! 的位数

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

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

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

最新文章

  1. 十个 SCP 传输命令例子
  2. 我是如何从程序小白成为码农的
  3. 图书推荐:《ASP.NET.基础教程——C#案例版》
  4. 最长公共子序列(C语言)
  5. django系列5.2--ORM数据库的单表操作
  6. I.MX6 MAC地址修改
  7. ubuntu下vlc-android编译
  8. 关于软件开发的一些常识和思考
  9. python学习笔记(python发展介绍)
  10. 宝塔/Linux下自动更新maccms到github原版的最新版
  11. 计算机无法安装dx11,Windows10系统DX11正确的安装路径是什么?
  12. TIMESTAMP和DATETIME的区别以及选择
  13. oracle无效数字紧接着起line,shape数据类型【DOC精选】.doc
  14. mt7620n华硕固件下载_无法安装Windows10,这台电脑磁盘布局不受UEFI固件支持解决方法...
  15. 成人学位英语词汇易混淆的125个词
  16. flash不同颗粒SLC、MLC、TLC、QLC擦写次数
  17. 解析范式(1NF-4NF)
  18. 关于直播的iOS开发
  19. app小程序手机端Python爬虫开发00-课程介绍
  20. 阿里云导出负载均衡SLB实例数据

热门文章

  1. 新东方老师讲笑话最全版-严禁个人崇拜
  2. 一台服务器最大能支持多少条 TCP 连接?面试官的话问倒一大片。。。
  3. 51单片机模拟I2C程序
  4. Python编程 | 两数相除
  5. 渲染引擎分析 - 鸿蒙(OpenHarmony) JS UI 源码阅读笔记
  6. 微信无法注销,小程序管理员身份尚未解除怎么解决?
  7. 第十一届蓝桥杯国赛H题答疑
  8. java 104规约监听,获取数据,解析数据,电网104规约
  9. 3月14日云栖精选夜读 | 阿里云成为开源组织CDF创始成员,积极推动软件生态构建... 1
  10. 深度卷积网络详细解释