news 2026/9/11 0:15:11

欧拉筛(线性筛)——算法笔记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
欧拉筛(线性筛)——算法笔记

欧拉筛是一种筛选素数算法,也叫线性筛,因为他的时间复杂度很优秀,能做到o(1),而一般的暴力判断方法要到o(n)。

作为一种基础算法,代码不长,但是其中蕴含着一种很精妙的数学思想,即素数的整数倍一定不是素数。

要保证时间严格线性,我们还应当在筛选的时候注意重复筛选的次数,做到不重不漏,这里又有一个巧妙的判断方式:只判断这个数的最小质因数,这样就能达到一个数只判一次。

#include<iostream> using namespace std; int a[100]={1,1}; int b[100]={0}; int main(){ int n; cin>>n; int cnt=0; for(int i=2;i<=n;i++){ if(!a[i]) { b[++cnt]=i; for(int j=2;j<=cnt;j++){ if(j*b[i]>n) break; a[j*b[i]]=1; if(i%b[j]==0) break; } } } }

懒得加注释了,只是自己的笔记,csdn上有更多讲得很好的文章,可以多看看。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 22:32:08

K8S系列之7.2:异构计算(GPU与vGPU在K8S中的管理与应用)

在AI时代,GPU已成为企业最宝贵的计算资源之一。如何在Kubernetes中高效管理、调度和共享这些昂贵的异构计算资源,是每个云原生AI平台必须解决的核心问题。 引言:AI计算的新挑战 传统GPU使用模式的痛点: 资源孤岛:GPU服务器独立管理,无法形成资源池 利用率低下:单个任务…

作者头像 李华
网站建设 2026/9/11 3:25:43

FOTA升级进阶:文件系统直接升级与串口分段传输深度解析!

在嵌入式设备FOTA升级中&#xff0c;传统全量升级模式面临存储资源占用高、网络波动易中断等挑战。文件系统直写通过绕过中间缓存直接写入文件系统节点&#xff0c;减少内存消耗与操作延迟&#xff1b;串口分段传输则依托串口稳定特性&#xff0c;将升级包拆分为小段进行传输与…

作者头像 李华
网站建设 2026/9/10 6:48:25

从零实现行为树,深度剖析节点逻辑与黑板通信机制

第一章&#xff1a;行为树的设计行为树&#xff08;Behavior Tree&#xff09;是一种用于建模智能体决策逻辑的层次化结构&#xff0c;广泛应用于游戏AI、机器人控制和自动化系统中。其核心思想是将复杂的任务分解为一系列可组合、可复用的节点&#xff0c;通过定义节点间的执行…

作者头像 李华
网站建设 2026/9/10 0:17:11

跑酷游戏 开始场景 资源加载 cocos3.8.7

引言 在游戏开发中,资源加载是一个至关重要的环节。一个优秀的加载场景不仅能提升用户体验,还能展示游戏的特色。本文将详细解析一个基于 Cocos Creator 3.8.7 的资源加载场景实现,包括动态配置表加载、资源管理以及自定义进度条的实现。 项目结构概览 包含以下几个核心文…

作者头像 李华
网站建设 2026/9/11 2:18:10

基于52单片机的楼道智能照明系统设计与实现

第一章 设计背景与核心目标 传统楼道照明多采用常亮或手动开关控制&#xff0c;常亮模式存在严重能源浪费&#xff0c;手动开关则需用户触摸操作&#xff0c;夜间或双手忙碌时使用不便&#xff0c;且部分用户忘记关灯会进一步加剧能耗问题。52单片机&#xff08;选用STC89C52RC…

作者头像 李华