快速判断质数(6的倍数法)板子

bool judge(int num) {if (num == 2 || num == 3) {return true;}//如果num不在6的倍数附近,则不是素数if (num % 6 != 1 && num % 6 != 5) {return false;}//若num在6的倍数附近,用6的倍数附近的数来判断for (int i = 6; i <= sqrt(num); i += 6) {if (num % (i - 1) == 0 || num % (i + 1) == 0) {return false;}}return true;
}

欧拉筛板子

#include <iostream>
using namespace std;const int INF = 100000000;int num[INF] = { 0 };   //存储质数,num[0]记录了质数的个数
int flag[INF] = { 0 }; //判断第n个数,flag[n]=1代表n不为质数void find(int max) {for (int i = 2; i <= max; i++) {if (!flag[i]) {num[++num[0]] = i;  //num[0]记录了质数的个数}for (int j = 1; j <= num[0] && i * num[j] <= max; j++) {flag[i * num[j]] = 1;if (i % num[j] == 0) {break;}}}
}int main()
{int max = 100;find(max);cout << max << " 内的质数有 " << num[0] << " 个" << endl;cout << "分别是:" << endl;for (int i = 1; i <= num[0]; i++) {cout << num[i] << '\t';if (i % 5 == 0) {cout << endl;}}return 0;
}

运行结果如下

【C++】快速判断质数(6的倍数法)、快速获取n以下的质数(欧拉筛)板子相关推荐

  1. 素数筛选法(埃氏筛 欧拉筛)

    质数筛选法 文章目录 质数筛选法 前言 一.埃氏筛 O(nloglogn)O(nloglogn)O(nloglogn) 二.欧拉筛O(n)O(n)O(n) 总结 前言 当需要大范围内的素数时,例如1e ...

  2. F. 1.小W 的质数(prime)[欧拉筛再理解]

    Description 小X是一位热爱数学的男孩子,在茫茫的数字中,他对质数更有一种独特的情感.小X认为,质数是一切自然数起源的地方.  在小X的认知里,质数是除了本身和1以外,没有其他因数的数字.但 ...

  3. 筛选质数,埃氏筛和欧拉筛(线性筛)

    求len之内的所有的素数 除了比较常用的开根号的求法,还有两种更好的方法,埃氏筛和线性筛.其中埃氏筛更好理解,而线性筛(欧拉筛)不好理解但是更快. 埃氏筛 #include <bits/stdc ...

  4. 【筛质数】——朴素筛,埃式筛,欧拉筛

    题目描述: 题目分析: 这道题可以用,朴素筛,埃氏筛,欧拉筛来写. 普通筛: 时间复杂度:O(n logn) 时间复杂度太高,会超时的!!(9/10) #include <iostream> ...

  5. 数据结构与算法:欧拉筛——查找素数(质数)的最优解算法 O(n)

    前言:众所周知,查找素数是算法题中最基础的问题,也是经常被问到的问题.            但往往同学们找不到最优解法,因而导致 时间复杂度 过大而超出限制.            下面列出常用的求 ...

  6. 牛客 华华给月月出题 (积性函数+欧拉筛+快速幂)

    题目描述 华华刚刚帮月月完成了作业.为了展示自己的学习水平之高超,华华还给月月出了一道类似的题: ⊕符号表示异或和,详见样例解释. 虽然月月写了个程序暴力的算出了答案,但是为了确保自己的答案没有错,希 ...

  7. 快速判断素数,六素数法

    最近翻百科的时候突然看到一个很不错素数筛选方法,叫六素数法,于是写了一下代码记录了下来.这是一种快速的判断一个数为素数的方法. 首先解释一下什么叫六素数.六素数的英文为 "sexy prim ...

  8. 信奥日记——数论(快速幂、埃氏筛、欧拉筛)

    文章目录 前情提要 正文 1.快速幂 思路 代码 完整代码(包含取模) 2.埃拉托斯特尼筛法(埃氏筛) 原理 思路 代码 完整代码(求 2 到 n 之间的素数) 3.线性筛 思路 代码 完整代码 前情 ...

  9. AcWing 868. 筛质数(欧拉筛模板)

    题目连接 https://www.acwing.com/problem/content/870/ 思路 欧拉筛模板,学习链接:https://acmer.blog.csdn.net/article/d ...

最新文章

  1. 第六章勘误以及Normalization算法不完整
  2. 前端学习(2055)vuejs的认识和特点介绍
  3. Android中WebService的应用
  4. VCSA6.7 备份和还原
  5. Bailian2786 Pell数列【数列】(POJ NOI0102-1788,POJ NOI0103-1788)
  6. 批处理文件怎么写_Spring Boot快速入门:批处理与任务调度
  7. 如何在Macbook安装Linux双系统
  8. Microsoft SQL Server 双机热备份,实时同步
  9. Spark开发:Spark大数据开发编程示例
  10. 记录一次网线水晶头的安装
  11. web嵌入flowplayer流媒体播放器
  12. BlueCoat ProxySG Attack Detection功能
  13. 创新创意ssm计算机毕业设计题目300例之java农村电商网站3252s
  14. 程序员吃饭段子Java吃完就走_爆笑段子:一朋友是个程序员,有一次和他吃饭,他愁眉苦脸的说...
  15. Electron屏幕截图的技术方案MacWindows
  16. NeurIPS 2022 | 何恺明团队新作:MAE扩展到视频!学习时空表示,最优Mask比例高达90%!...
  17. 查询计算机网络凭据,查看电脑账密利器 - 电脑凭据管理器图文使用教程
  18. 我的面试经历--缘起
  19. python Word 文档
  20. 搭建BI平台之前的准备工作

热门文章

  1. 推荐几个app开源项目
  2. 【技术新趋势】合合信息:表格识别与内容提炼技术理解及研发趋势
  3. 关于电子工资条8大问题,搞懂这些不再纠结
  4. 在HTML中将垂直转换为平行,大物实验答案解析.doc
  5. 【电脑运用及修理】Google Chrome 浏览器
  6. [有人@你]请查收你的年终总结报告
  7. 淘宝客接入PHP(二)
  8. android camera2 qcom,Qcom平台 Camera的一些知识点 之MCLK
  9. 到底适不适合学习3D建模?这5点少1个都不行
  10. Qemu使用及常见开发板的模拟