文章

2

粉丝

137

获赞

0

访问

12.4k

头像
素数筛选办法
P1697 华中科技大学2019年机试题
发布于2021年6月24日 12:50
阅读数 6.6k

#include <iostream>
#include <algorithm>
#include <string>
#include <bits/stdc++.h>


using namespace std;

const int maxn = 1000000+5;
int prime[maxn];
void getPrime(){
    memset(prime,0,sizeof(prime));
    for(int i=2;i<=maxn;i++){
        if(!prime[i]) prime[++prime[0]]=i;
        for(int j=1;j<=prime[0]&&prime[j]*i<=maxn;j++){
            prime[prime[j]*i]=1;
            if(i%prime[j]==0) break;
        }
    }
}

int main(){
    getPrime();

    long n,cnt=0;
    map<long,long> m;
    for(int i=1;prime[i]!=0;i++){
        if(prime[i]!=1)
            m[prime[i]]=prime[i];
    }
    cin>>n;
    long num;
    int j=1;
&n...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发