zoukankan      html  css  js  c++  java
  • 素数定理 nefu 117

    素数定理:

    随着x的增长,P(x) ≈x/ln(x) ,P(x)表示(1,x)内的素数的个数。

    这个定理,说明在1-x中,当x大到一定程度时,素数分布的概率为ln(x)

    竟然还有一道题目。

    素数个数的位数

    Problem : 117

    Time Limit : 1000ms

    Memory Limit : 65536K

    description

    小明是一个聪明的孩子,对数论有着很浓烈的兴趣。他发现求1到正整数10
    n
     之间有多少个素数是一个很难的问题,该问题的难以决定于n 值的大小。现在的问题是,告诉你n的值,让你帮助小明计算小于10
    n
    的素数的个数值共有多少位?

    input

    输入数据有若干组,每组数据包含1个整数n(1 < n < 1000000000),若遇到EOF则处理结束。

    output

    对应每组数据,将小于10
    n
     的素数的个数值的位数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有空格。

    sample_input

    3
    7
    

    sample_output

    3
    6

    hint

    素数定理
    #include <iostream>
    #include <stdio.h>
    #include <string.h>
    #include <math.h>
    #include <algorithm>
    using namespace std;
    #define E 2.718281828
    
    int main()
    {
        int n;
        while( scanf("%d",&n)!=EOF )
        {
            double tmp=n-log10( (double)n/log10(E) );
            int wei=(int)(tmp);
            double other=tmp-wei;
            if(other>1e-10)
            {
                wei+=1;
            }
            printf("%d
    ",wei);
        }
        return 0;
    }
  • 相关阅读:
    Linux socket本地进程间通信之TCP
    Linux socket本地进程间通信之UDP
    Linux I/O多路转接之select函数
    静态库和动态库的分析
    点云数据 网络
    maskrcnn-benchmark训练注意事项
    redhat7安装maskrcnn-benchmark注意事项
    特征选择
    docker
    可视化
  • 原文地址:https://www.cnblogs.com/chenhuan001/p/4977949.html
Copyright © 2011-2022 走看看