题解 | #素数#

素数

https://www.nowcoder.com/practice/7f4be54b37a04fdaa4ee545819151114

//用素数筛法找出所有质数
//质数的倍数为非质数
#include <iostream>
using namespace std;

int isPrime[10001];

void Initial()
{
    for(int i=0;i<=10000;i++)
    {
        isPrime[i]=1;//先都认为是质数
    }
    isPrime[0]=0;
    isPrime[1]=0;

    for(int i=2;i<=10000;i++)//找出真正的素数
    {
        if(isPrime[i]==0)continue;


        for(int j=i*2;j<=10000;j+=i)//质数的倍数为非质数
        {
            isPrime[j]=0;
        }
    }
}

int main() {

    Initial();
    int n;
    while (cin >> n) { 
       int flag=0;//没有各位为1 的素数
       for(int i=2;i<n;i++)
       {
        if(isPrime[i]==1&&i%10==1)
        {
            flag=1;
            cout<<i<<" ";
        }
       }
       if(flag==0)cout<<"-1";
       cout<<endl;
    }
}

全部评论

相关推荐

08-29 19:44
门头沟学院 Java
wish233:很强了,加上这个学历,一点小建议就是可以把你的项目做一个压测,比如说你的RPC,可以对比一下和http相比性能怎么样。还有你的秒杀,一定要自己压测一遍,确保不会出现数据不一致的问题。还有就是对于分布式锁的粒度一定要理清楚,这个很容易被问到。
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
09-01 21:40
已编辑
同济大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务