1013 数素数 (20 分)

Posted zhanghaijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1013 数素数 (20 分)相关的知识,希望对你有一定的参考价值。

1013 数素数 (20 分)

P?i?? 表示第 i 个素数。现任给两个正整数 MN10?4??,请输出 P?M?? 到 P?N?? 的所有素数。

输入格式:

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

输出格式:

输出从 P?M?? 到 P?N?? 的所有素数,每 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

#include<iostream>
#include<vector>
#include<algorithm>
#include<map>
#include<set>
#include<cmath>
#include<climits>
#include<sstream>
#include<cstdio>
#include<string.h>
#include<unordered_map>
using namespace std;
long long int maxn=1000000;
int main()
{
    vector<int>primes(maxn,1);
    vector<int> p;
    p.push_back(0);
    int m,n;
    scanf("%d%d",&m,&n);
    for(long long  i=2;i<=maxn;i++)
    {
        if(primes[i]==1)
        {
            p.push_back(i);
            if(p.size()>n) break;
            for(long long  j=i+i;j<=maxn;j+=i)
                primes[j]=0;
        }
    }

    int num=0;
    int state=0;
    for(int i=m;i<=n;i++)
    {
        if(state!=0) printf(" ");
        printf("%d",p[i]);
        state=1;
        num++;
        if(num%10==0)
        {
            state=0;
            printf("
");
        }

    }
    return 0;
}

 



以上是关于1013 数素数 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

1013 数素数 (20 分)

1013 数素数 (20)(20 分)

1013 数素数 (20 分)

B 1013 数素数 (20分)

1013 数素数 (20分)

PAT乙级1013 数素数 (20 分)