1013. 数素数 (20)

来源:互联网 发布:什么是网络直销模式 编辑:程序博客网 时间:2024/06/10 06:16

令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出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

主要是理解题意:是输出第M个素数到第N个素数之间的素数。

#include<stdio.h>#include<math.h>#include<vector>#include<map>#include<string>#include<string.h>#include<algorithm>#include<iostream>using namespace std;bool sushu(int num){    if (num % 2 == 0)    {        return false;    }    for (int i = 3; i <= sqrt(num); i++)    {        if (num%i == 0)            return false;    }    return true;}int main(void){    vector<int> vt;    vt.push_back(0);    vt.push_back(2);    int i = 3;    int num = 0;    while (num<=10000)    {        if (sushu(i)==true)        {            vt.push_back(i);            num++;        }        i++;    }    int m = 0;    int n = 0;    cin >> m >> n;    int sum = 1;    for (int i = m; i <= n; i++)    {        cout << vt[i];        if (i == n)        {        }        else if (sum < 10)        {            cout << " ";        }        else        {            cout << "\n";            sum = 0;        }        sum++;    }    return 0;}
原创粉丝点击