zoukankan      html  css  js  c++  java
  • 结果填空:阶乘位数

    蒜头君对阶乘产生了兴趣,他列出了前 1010 个正整数的阶乘以及对应位数的表:

    nnn!n!位数
    1 1 1
    2 2 1
    3 6 1
    4 24 2
    5 120 3
    6 720 3
    7 5040 4
    8 40320 5
    9 362880 6
    10 3628800 7

    对于蒜头君来说,再往后就很难计算了。他试图寻找阶乘位数的规律,但是失败了。现在请你帮他计算出第一个正整数的阶乘位数大于等于 1000010000 的数是多少,即求最小的正整数 nn 满足 n!n! 的位数大于等于 1000010000。

    样例输入

    样例输出



    套用公式 = log10(1)+log10(2)+...+log(10)+1 再取整 答案为3249
     1 #include<iostream>
     2 #include<algorithm>
     3 #include<cmath>
     4 using namespace std;
     5 int main()
     6 {
     7     double s=0;
     8     for(int i=1;;i++){
     9         s+=log10(i);
    10         if(int (s+1)>=10000){
    11             cout<<i<<endl;
    12             break;
    13         }
    14     }
    15     return 0;
    16 }


  • 相关阅读:
    echarts使用
    Nutch插件系统
    linux命令总结
    linux命令行快捷键
    每日一笔
    Hadoop参数调优
    rsync用于同步目录
    hadoop遇到的问题(汇总)
    linux历史命令
    hadoop 编译代码及运行
  • 原文地址:https://www.cnblogs.com/wydxry/p/10560529.html
Copyright © 2011-2022 走看看