线性筛法筛素数
2016-08-01 09:57
141 查看
// // main.cpp // Richard // // Created by 邵金杰 on 16/8/1. // Copyright © 2016年 邵金杰. All rights reserved. // #include<iostream> using namespace std; const int maxn=200000; int primes[maxn],is_prime[maxn]; int main() { int m,pi=0; cin>>m; memset(is_prime,1,sizeof(is_prime)); for(int i=2;i<=m;i++) { if(is_prime[i]) primes[pi++]=i; for(int j=0;j<pi&&i*primes[j]<=m;j++) { is_prime[i*primes[j]]=0; if(i%primes[j]==0) break; } } for(int i=0;i<pi;i++) { if(i%10==0) printf("\n"); printf("%3d",primes[i]); } printf("\n"); return 0; }这样做的好处是,某一个数,让i最大时来把它筛掉,那样的话不会重复筛去,因为,随着i的增大,即使乘primes中最小的,也会大于这个数,所以不回重复
相关文章推荐
- SSL2522 2014年汕头市选拔赛普级组 约数(线性筛素数)
- 计蒜客 noip 模拟#4Day1T1 小X的素数 【线性筛】
- 【BZOJ-3308】九月的咖啡店 最大费用最大流 + 线性筛素数
- 素数筛法求素数(线性时间)
- HDU - 4497 - GCD and LCM (线性筛素数 + 计数)
- 线性筛素数
- 线性筛选素数
- 大数区间筛素数 线性
- 素数线性筛
- 线性打素数表
- 洛谷 P3383【模板】线性筛素数
- 看到高手的线性筛素数方法
- 线性筛素数模板
- 素数线性筛(O(N)!!!)
- [模板练习]线性筛素数
- 【BZOJ2721】[Violet 5]樱花 线性筛素数
- 埃氏筛选与线性筛选求素数
- 欧拉筛——线性筛素数和欧拉函数
- 【转载】素数快速打表(据说是线性复杂度)
- 线性筛选求素数