zoukankan      html  css  js  c++  java
  • 1163.素数

    题目描述:

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

    输入:

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

    输出:

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

    样例输入:
    100
    样例输出:
    11 31 41 61 71
    #include<iostream>
    using namespace std;
    
    int prime[10000];
    int size;
    bool mark[10001];
    void init(){
        for(int i=1;i<=10000;i++){
            mark[i]=false;
        }
        size=0;
        for(int i=2;i<=10000;i++){
            if(mark[i]==true)continue;
            prime[size++]=i;
            for(int j=i*i;j<=10000;j+=i){
                mark[j]=true;
            }
        }
    }
    
    int main(){
        int n;
        init();
        while(cin>>n){
            bool is=false;
            for(int i=0;i<size;i++){
                if(prime[i]<n && prime[i]%10==1){
                    if(is==false){
                        is=true;
                        cout<<prime[i];
                    }
                    else cout<<" "<<prime[i];
                }
            }
            if(is==false){
                cout<<"-1"<<endl;
            }
            else cout<<endl;
        }
        return 0;
    }
  • 相关阅读:
    sqlsever中生成GUID的方法
    部署项目到服务器
    读后感
    第二次作业
    课堂作业
    第一次作业 开发环境配置介绍
    第二次结对作业
    代码审查
    最大连续子数组和
    单元测试
  • 原文地址:https://www.cnblogs.com/bernieloveslife/p/9735121.html
Copyright © 2011-2022 走看看