pat乙级1013(代码片段)

another-7 another-7     2023-04-25     730

关键词:

1013 数素数 (20分)

题目地址:https://pintia.cn/problem-sets/994805260223102976/problems/994805309963354112

(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

我的理解

是输出第m到n个素数,而不是输出m到n之间的素数。

代码段

#include <iostream>
#include <iomanip>
#include <math.h>
#include <stdlib.h>

using namespace std;
// 判断x是否为素数
bool isPrime(int x);

int main() 
    int m, n;
    int format = 0;
    int counter = 0;
    cin >> m >> n;
    // 输出从1到无穷 第m到n个素数
    // 质数又称素数。指整数在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
    // 换句话说,只有两个正因数(1和自己)的自然数即为素数。
    // 比1大但不是素数的数称为合数。1和0既非素数也非合数。
    for (int i = 2; counter <= n; ++i) 
        if (isPrime(i)) 
            counter++;
            if (counter >= m && counter <= n) 
                if (format == 9) 
                    cout << i << endl;
                    format = 0;
                 else 
                    if (counter == n) 
                        cout << i;
                     else 
                        cout << i << " ";
                    
                    format++;
                
            
        
    
    return 0;


bool isPrime(int x) 
    if (x == 2 || x == 3) 
        return true;
    
    int limit = (int) sqrt(x);
    int i;
    for (i = 2; i <= limit; ++i) 
        if (x % i == 0) 
            break;
        
    
    return i > limit;

pat乙级真题1013.组个最小数(代码片段)

PAT乙级真题1013.组个最小数题目描述给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小... 查看详情

pat-乙级-1013数素数(代码片段)

令 P?i?? 表示第 i 个素数。现任给两个正整数 M≤N≤10?4??,请输出 P?M?? 到 P?N?? 的所有素数。输入格式:输入在一行中给出 M 和 N,其间以空格分隔。输出格式:输出从 P?M?? 到&n... 查看详情

pat乙级1013(代码片段)

1013数素数(20分)题目地址:https://pintia.cn/problem-sets/994805260223102976/problems/994805309963354112令(P_i)表示第i个素数。现任给两个正整数M≤N≤(10^4),请输出(P_M)到(P_N)的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出... 查看详情

pat乙级1013.数素数(20)

1013.数素数(20)时间限制100ms内存限制65536kB代码长度限制8000B判题程序Standard作者CHEN,Yue令Pi表示第i个素数。现任给两个正整数M<=N<=104,请输出PM到PN的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:... 查看详情

pat乙级1013.数素数(20)

令Pi表示第i个素数。现任给两个正整数M<=N<=104,请输出PM到PN的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空... 查看详情

pat乙级1038(代码片段)

题目链接https://pintia.cn/problem-sets/994805260223102976/problems/994805284092887040题解一这份代码最后一个点会超时//PATBasicLevel1038//https://pintia.cn/problem-sets/994805260223102976/problems/994805284092887040#inclu 查看详情

pat——乙级1016(代码片段)

乙级PAT的1016乙级的题相对比较简单,我也是主要联系写代码的格式,而不是联系算法。1016 部分A+B (15point(s))正整数 A 的“D?A??(为1位整数)部分”定义为由 A 中所有 D?A?? 组成的新整数 P?A??。... 查看详情

pat乙级1003(代码片段)

题目  题目地址:PAT乙级1003 题解  规律观察题,本题的关键在于把题读懂,同时还有几个比较容易疏忽的地方需要注意;总之这道题要考虑的东西更多,细节上也要特别注意;  规律:“如果 aPbTc&nb... 查看详情

pat乙级1040有几个pat(25分)(代码片段)

题目地址#include<cstdio>#include<cstring>constintMAXN=100010;constintMOD=1000000007;charstr[MAXN];//字符串intleftNump[MAXN]=0;//每一位左边含p的个数intmain() scanf("%s",str); intlen& 查看详情

pat乙级1045(代码片段)

题目   题目地址:PAT乙级1045 题解   本题的解法比较巧妙,刚开始的试着用暴力求解,果不其然时间超限……   变换思路,既然对于每个元素来说满足的条件是前小后大,那么对数组排序,... 查看详情

pat乙级1017(代码片段)

题目  题目地址:PAT乙级1017 题解  粗看是一道大数除法题,实际上只不过是通过字符数组模拟除法过程,理解之后还是比较简单的;  具体分析一下本题;  因为题设中的除数(n)是一位整数,因... 查看详情

pat乙级1085pat单位排行(25分)(代码片段)

题目地址#include<cstdio>#include<iostream>#include<cmath>#include<map>#include<algorithm>#include<string>#include<vector>usingnamespacestd;structnode intA; intB; 查看详情

pat乙级1033(代码片段)

题目题目地址:https://pintia.cn/problem-sets/994805260223102976/problems/994805288530460672 题解   本题一直有一分的样例点过不了,原因在于用了cin接收输入的字符……   问题在于:如果用cin输入,无法接收无坏键的... 查看详情

pat乙级1014(代码片段)

  本题主要还是考验细致程度,需要把各种情况考虑到、题审清楚1#include<iostream>2#include<string>3usingnamespacestd;45intmain()6stringstr[4];7for(inti=0;i<4;i++)8getline(cin,str[i]);9intstr_1=0,str_2=0;10str_1=str[0 查看详情

pat乙级1019(代码片段)

  本题没有考虑到小于1000的情况,当小于1000的时需要给vector的向量中推入0,直到向量中有四位数字,之后再进行排序并进行相关计算 1#include<iostream>2#include<algorithm>3#include<vector>4#include<cmath>5usingnamespacestd... 查看详情

pat乙级1023(代码片段)

1#include<iostream>2usingnamespacestd;34intmain()5intnum[10]=0;6for(inti=0;i<10;i++)7cin>>num[i];8for(inti=1;i<10;i++)9if(num[i]!=0)10cout<<i;11num[i]--;12break;131415fo 查看详情

pat乙级1016(代码片段)

1#include<iostream>2#include<cmath>3usingnamespacestd;45intmain()6inta=0,da=0;7intb=0,db=0;8cin>>a>>da>>b>>db;9intcnta=0,cntb=0;10intchu=a,yu=0;11while(chu>=10) 查看详情

pat乙级1095解码pat准考证(25分)(代码片段)

题目地址#include<cstdio>#include<iostream>#include<algorithm>#include<string>#include<vector>#include<map>#include<unordered_map>usingnamespacestd;intn,m;constint 查看详情