PAT 乙级 1013. 数素数 (20)

令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
 1 #include<cstdio>
 2 #include<iostream>
 3 #include<cmath>
 4 #include<cstring>
 5 using namespace std;
 6
 7 int a[111005];//注意是素数数量在10^4以内,不是范围
 8
 9 bool prime(int num)
10 {
11     if(num==0||num==1)
12         return false;
13     else if(num==2||num==3)
14         return true;
15     else{
16         for(int i=2;i<sqrt((double)num)+1;i++)
17             if(num%i==0)
18                 return false;
19     }
20     return true;
21 }
22
23 int main()
24 {
25     int k=1;
26     for(int i=1;i<111005;i++)
27         if(prime(i))
28             a[k++]=i;
29     int m,n;
30     scanf("%d%d",&m,&n);
31     for(int i=m;i<=n;i++)
32     {
33         if((i-m+1)%10==1)
34             printf("%d",a[i]);
35         else if((i-m+1)%10==0)
36             printf(" %d\n",a[i]);
37         else
38             printf(" %d",a[i]);
39     }
40     //printf("\n%d\n",k);
41     return 0;
42 }
时间: 2024-08-09 21:56:05

PAT 乙级 1013. 数素数 (20)的相关文章

PAT乙级 1013. 数素数 (20)

1013. 数素数 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 令Pi表示第i个素数.现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数. 输入格式: 输入在一行中给出M和N,其间以空格分隔. 输出格式: 输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格. 输入样例: 5 27 输出样例: 11 13 17 19 23 29 31 37 4

PAT乙级1013.数素数

1013 数素数 (20)(20 分) 令P~i~表示第i个素数.现任给两个正整数M <= N <= 10^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 #inc

PAT:1013. 数素数 (20) AC

#include<stdio.h> #include<math.h> bool isprime(int num) { int sqr=(int)sqrt(num*1.0); //[skill]判断素数只要判断到开平方就可以了 for(int i=2 ; i<sqr+1 ; ++i) if(num%i==0) return 0; return 1; } int main() { int l,r; scanf("%d%d",&l,&r); in

PAT Basic 1013 数素数 (20) [数学问题-素数]

题目 令Pi表示第i个素数.现任给两个正整数M <= N <= 10^4,请输出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个质数之间所有质数,每10个一行

PTA乙级 (1013 数素数 (20分))

1013 数素数 (20分) https://pintia.cn/problem-sets/994805260223102976/problems/994805309963354112 #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <cmath> #include <algorithm> #include <

PAT 1013. 数素数 (20)

令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 1 #include<stdio.h> 2 #include

PAT乙级-1057. 数零壹(20)

给定一串长度不超过105的字符串,本题要求你将其中所有英文字母的序号(字母a-z对应序号1-26,不分大小写)相加,得到整数N,然后再分析一下N的二进制表示中有多少0.多少1.例如给定字符串"PAT (Basic)",其字母序号之和为:16+1+20+2+1+19+9+3=71,而71的二进制是1000111,即有3个0.4个1. 输入格式: 输入在一行中给出长度不超过105.以回车结束的字符串. 输出格式: 在一行中先后输出0的个数和1的个数,其间以空格分隔. 输入样例: PAT (

1013 数素数 (20)(20 分)

令P~i~表示第i个素数.现任给两个正整数M <= N <= 10^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 分析: 题目要求的是打出前10000个素数, 那

1013. 数素数 (20)

令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 #include <stdio.h> #include &l