求小于等于n的质数个数
来源:互联网 发布:浪潮软件股票行情 编辑:程序博客网 时间:2024/04/30 04:29
埃氏筛法(Eratosthenes筛选法)
算法基本思想:要得到自然数n以内的全部素数,必须把不大于n1/2的所有素数的倍数剔除,剩下的就是素数。
给出要筛数值的范围n,找出n以内的素数。先用2去筛,即把2留下,把2的倍数剔除掉;再用2的下一个没被筛掉的数,也就是3筛,把3留下,把3的倍数剔除掉;接下去用下一个质数5筛,把5留下,把5的倍数剔除掉;不断重复下去……。
bool a[1000003];//记录i是否被剔除int main(){ int n; while(cin>>n) { memset(a, 0, (sizeof(bool))*1000003); for(int i=2;i<=sqrt(n);i++)//可能的因数 { if(a[i]==1) continue; for(int j=2;j*i<=n;j++) { a[j*i]=1; } } int ans=0; for(int i=2;i<=n;i++) { if(a[i]!=1) ans++; } cout<<ans<<endl; }}
阅读全文
0 0
- 求小于等于n的质数个数
- 动态规划求小于等于n的质数个数
- HDU 2824 欧拉函数 求小于等于n且与n互质数的个数
- 求大于等于第一个数而且小于等于第二个数的所有的质数的和
- 质数筛选--快速筛选出小于等于N的质数
- 求小于正整数N的所有质数
- 求小于等于N的所有正整数里面包含的1的个数
- 筛法求小于等于整数n的所有质数
- 【质数算法】——判断质数、求小于N的质数、求前N个质数
- 小于N的质数
- 欧拉函数,求小于等于n 的数里与 n 互质的数的个数
- 求N个数以内的质数
- 求与N互质数的个数
- NOJ [F] 懒惰的风纪委Elaine 求一堆数能组成多少个数小于等于n
- 求 小于 n 的 质数 几种方式
- 求最大公约数和小于n的所有质数
- 笔面试题之 求小于N的质数中和为N的质数对
- 求小于n的素数个数(模板)
- PPP模糊度固定解文件下载
- myEclipse2014 实现简单的WebService 实例
- 使用 IntelliJ IDEA 在 Java 项目中添加 JAR 包
- pycharm破解
- 六级_第六天
- 求小于等于n的质数个数
- HDU
- 腾讯2017秋招笔试编程题(二)----游戏任务标记
- 171017—if嵌套试验(解一元二次方程)
- 简单易懂的对象池
- java Web 中常见的问题 Server Tomcat v8.5 Server at localhost failed to start.
- switch
- leetcode.array--64. Minimum Path Sum
- Qt窗体设置Qt::WA_TranslucentBackground为全黑的原因