[保研/考研机试] KY183 素数 北京航空航天大学复试上机题 C++实现

题目链接:

素数https://www.nowcoder.com/share/jump/437195121691718444910

描述

输入一个整数n(2<=n<=10000),要求输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数,如果没有则输出-1。

输入描述:

输入有多组数据。 每组一行,输入n。

输出描述:

输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数(素数之间用空格隔开,最后一个素数后面没有空格),如果没有则输出-1。

示例1

输入:

cpp 复制代码
100

输出:

cpp 复制代码
11 31 41 61 71

源代码:

cpp 复制代码
#include<iostream>
#include<cmath>
#include<vector>
using namespace std;

//例题6.8 素数
bool isPrime(int num) {
    if (num == 1) {
        return false;
    }
    for (int i = 2; i <= sqrt(num); i++) {
        if (num % i == 0) {
            return false;
        }
    }
    return true;
}

int main()
{
    int n;
    while (cin >> n) {
        vector<int> nums;
        for (int i = 2; i < n; i++) {
            if (isPrime(i) && i%10==1) {
                nums.push_back(i);
            }
        }
        if (nums.size() > 0) {
            cout << nums[0];
            for (int i = 1; i < nums.size(); i++) {
                cout << " " << nums[i];
            }
            cout << endl;
        }
        else {
            cout << -1 << endl;
        }

    }

    return 0;
}

提交结果:

相关推荐
2601_956121971 小时前
背包基础篇(01、完全、分组、多重、混合)
c++·算法·动态规划
fpcc2 小时前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
兴通物联科技2 小时前
SMT PCB 微小 DataMatrix 码扫不动问题分析 兴通 XT8601B 600 万像素工业读码器落地实践
大数据·人工智能·单片机·嵌入式硬件·算法·计算机视觉
月华路5 小时前
G1 GC 对数组与大对象(Humongous)的处理
java·jvm·算法
我想走路带风5 小时前
LRU和最长前缀和(计算机网络算法)
计算机网络·算法
M78佐菲5 小时前
Linux学习笔记:进程
linux·笔记·学习·算法
ShineWinsu6 小时前
对于C++:C++20中线程、初始化、Lambda与内存视图等特性的解析
c++·c++20
徐小夕7 小时前
表格、文档、甘特、大屏、表单一站打通:pxcharts超级表格4.0正式上线!
前端·算法·github
张张的快乐时光呀!7 小时前
记录使用 MFC 打开文件对话框读取一张图片并做简单的灰度转换算法简单学习过程
c++·mfc