• 牛客网 2018年全国多校算法寒假训练营练习比赛(第三场)A.不凡的夫夫-Stirling(斯特林)公式 取N阶乘近似值


    2018年全国多校算法寒假训练营练习比赛(第三场)

    A.不凡的夫夫
    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 32768K,其他语言65536K
    64bit IO Format: %lld

    题目描述

    夫夫有一天对一个数有多少位数感兴趣,但是他又不想跟凡夫俗子一样,
    所以他想知道给一个整数n,求n!的在8进制下的位数是多少位。

    输入描述:

    第一行是一个整数t(0<t<=1000000)(表示t组数据)
    接下来t行,每一行有一个整数n(0<=n<=10000000)

    输出描述:

    输出n!在8进制下的位数。
    示例1

    输入

    3
    4
    2
    5

    输出

    2
    1
    3



    代码:
     1 //A-斯特林公式-求位数
     2 #include<iostream>
     3 #include<cstring>
     4 #include<cstdio>
     5 #include<cmath>
     6 #include<algorithm>
     7 #include<stack>
     8 #include<map>
     9 #include<vector>
    10 #include<queue>
    11 #include<set>
    12 using namespace std;
    13 const int inf=1<<30;
    14 const int maxn=1e5+10;
    15 const double eps=1e-6;
    16 const int mod=1e9+7;
    17 const double pi=acos(-1.0);
    18 const double epx=1e-10;
    19 const double e=exp(1);
    20 typedef long long ll;
    21 int l(int n){
    22     int s=1;
    23     if(n>3)
    24         s=(log(2*pi*n)/log(8))/2+n*(log(n/e)/log(8))+1;
    25     return s;
    26 }
    27 int main(){
    28     int n,t;
    29     scanf("%d",&t);
    30     while(t--){
    31         scanf("%d",&n);
    32         printf("%d
    ",l(n));
    33     }
    34     return 0;
    35 }
    
    
    


    最近一堆大数的题目写的头都炸了,java学的超级垃圾,c语言版的太长不想写。。。

    补题补题,天坑还未补。。。

    太垃圾了,我怎么这么菜啊。

  • 相关阅读:
    activity 之间传递参数
    手动创建一个Activity,完成页面跳转(intent 无参数)
    C++中汉字字符串的截取
    android基础知识清单。
    更改远程仓库
    设计模式六大原则
    事件订阅代码
    Python Mac ssl.SSLError certificate verify failed (_ssl.c:833)
    Python库中常见的 __all__ 变量是干啥的
    Thrift的使用-Python
  • 原文地址:https://www.cnblogs.com/ZERO-/p/9711201.html
Copyright © 2020-2023  润新知