• 1013 数素数


    1013 数素数 (20分)
     

    令 Pi​​ 表示第 i 个素数。现任给两个正整数 MN104​​,请输出 PM​​ 到 PN​​ 的所有素数。

    输入格式:

    输入在一行中给出 M 和 N,其间以空格分隔。

    输出格式:

    输出从 PM​​ 到 PN​​ 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。

    输入样例:

    5 27
    
     

    输出样例:

    11 13 17 19 23 29 31 37 41 43
    47 53 59 61 67 71 73 79 83 89
    97 101 103

        题目较简单,还是用埃拉托斯特尼筛子法。看代码

     1 #include<iostream>
     2 #define N 104750
     3 using namespace std;
     4 int main () 
     5 {
     6    int m,n;
     7    cin>>m>>n;
     8    int tem;
     9    int v[N]={0};
    10    for(int i=2;i<=N/2;i++)  //剔除合数,余下的为素数
    11    {
    12        tem=i;
    13        if(v[tem]==0)
    14        {
    15           while(tem<N)
    16           {
    17               tem+=i;
    18               if(tem<N)
    19                   v[tem]=1;
    20           }
    21        }
    22    }
    23    int index=0,num=0;
    24    for(int i=2;i<N;i++)
    25    {
    26        if(v[i]==0)
    27        {
    28            index++;    //记录第几个素数
    29            if(index>n) 
    30                break;
    31            if(index>=m&&index<=n)  //输出第[m,n]这一区间的素数
    32            {
    33                num++;
    34                if(num%10==0)   //输出每行第十个数后换行
    35                    cout<<i<<endl;
    36                else if(index<n)
    37                    cout<<i<<" ";
    38                else
    39                    cout<<i;
    40            }
    41        }
    42    }
    43    return 0;
    44 }

    ac了

  • 相关阅读:
    SpringBoot集成RocketMQ报错:Bad annotation definition in @ExtRocketMQTemplateConfiguration...
    RocketMQ分析
    SpringBoot 自定义 health Actuator 原理
    【质量】容错机制
    【Java】ByteBuffer介绍
    【AWS】Essentials
    【QA123】NFR 非功能性需求
    【JVM123】OOM分析和解决
    【网络123】Http返回码
    【网络123】HTTP连接
  • 原文地址:https://www.cnblogs.com/buanxu/p/12812680.html
Copyright © 2020-2023  润新知