赞
踩
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<cmath>
- #include<vector>
- #include<algorithm>
- using namespace std;
-
-
- vector<int> prime;
- const int MAXN = 1e5;
- bool IsPrime[MAXN];
-
-
- // Ver2 : 适用数量级超大的质数判断 (质数筛 是核心中的核心)
- // 思想 : 1、用一个辅助数组IsPrime[MAXN],标记每个下标是否为质数
- // 2、再用一个可变长度的数组 vector<int> prime 存储所有质数
- // (使用vector 需要 #include<vector>)
-
- void IniIsPrime(){ // IniIsPrime() 用来初始化(找出) MAXN 范围内的所有质数
- for(int i = 0 ; i < MAXN ; ++i){
- IsPrime[i] = true; // 先默认所有位置都是质数
- }
-
- IsPrime[0] = false; // 剔除 0 和 1 (不是质数)
- IsPrime[1] = false;
-
- for(int i = 2 ; i < MAXN ; ++i){
-
-
- if(!IsPrime[i]) continue; // 不是质数就跳过
-
- prime.push_back(i); // 是质数就压进(push_bac
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。