如图,题目出处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. 建房子 最安全图纸_农村建什么样的房子合适?分享15套图纸,总有一套适合你...
  2. 抢先体验 Windows PowerShell 2.0 全新技术
  3. 第5章-Vue.js交互及生命周期练习
  4. php的功能和特点,php有什么特点
  5. jvav的 全局变量 和 局部变量
  6. 全面预测我国量子通信市场规模及发展趋势
  7. icmp消息类型报告传输_ICMP消息的类型和ICMP消息格式
  8. 日记背景 android,只是意外 - 用这些 APP 来记录生活,再也不用担心无法坚持写日记 - Android 应用 - 【最美应用】...
  9. 观点:比特币新一轮突破“即将到来”
  10. Python: str.split()和re.split()的区别
  11. matlab2016b慢,Matlab 2016a/b中调用GPU速度巨慢的解决办法
  12. 如何用python做考勤_用Python编写一个电子考勤系统
  13. 用电机进行简单的PID参数整定
  14. 微信人脸SDK集成踩坑
  15. 艾媒研报 |2019年腾讯控股(0700.HK)业务解读及发展趋势研究报告
  16. 部署外网网站(一)——内网穿透实现外网访问
  17. 快递柜储物柜锁控制板
  18. spring batch的原则(避免停不下来)
  19. laravel路由的配置,别名,路由群组
  20. 微信公众平台开发——群发信息

热门文章

  1. 师妹:三维视觉方向这么多,我该如何入门和进阶呢?
  2. qcy教你下载你在CSDN上写过的文章——第三篇……
  3. JS三大构成 day01-1
  4. 计算机七年级作文,第一次偷玩电脑七年级作文.docx
  5. html5svg在线编辑器,HTML5 内联 SVG
  6. 腾讯安全周斌:用模型对抗,构建新一代业务风控免疫力
  7. c语言快速排序--超级简单代码少
  8. 7-6 公路村村通 (30 分)
  9. 十荟团被顶格罚款,社区团购没有无辜者
  10. Unity自定义Inspectors