当前位置: 首页 > news >正文

普通算法——欧拉筛

欧拉筛

思路:

  • 对欧拉筛的实现,主要是依靠一个数组模拟的栈来实现,核心思路为用栈储存已经发现的素数

  • 在之后的遍历中,即可以素数数组中的数为因数来筛出此素数的倍数

  • 遍历是以当前的 i i i 值为基数,来乘当前素数数组中的数

  • 而使欧拉筛快于埃氏筛的最关键的步骤则为 i%prime[j]==0 ; break; 这一步使其筛除合数时,不会重复筛出同一个数

    如: 2 3 4 5 6 7 8 9 10 11 12 中

    会先将2存进数组中,此时 i=2,数组中有2,所以筛去4,而此时2能被2整除,所以跳出循环

    再将3存入数组,此时 i=3…

  • 注意在循环条件时要加上 i * primes[j] <= N 不然容易发生数组越界

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;const int N = 500;
bool vis[N];
int prime[N];
int pos = 0;
int n;void Is_Prime(int p){vis[0] = vis[1] = false;for (int i = 2; i <= p; i++){if(vis[i])prime[++pos] = i;for (int j = 1; i * prime[j] <= p; j++){vis[i * prime[j]] = false;if(i % prime[j] == 0)break;//整除中断//条件i%p==0,保证合数只被最小质因子划掉//若i是质数,则最多枚举到自身中断//若i是合数,则最多枚举到自身的最小质数中断}}
}int main(){memset(vis, true, sizeof(vis));cin>>n;Is_Prime(n);for (int i = 1; i <= pos; i++)cout<<prime[i]<<" ";return 0;
}

相关文章:

普通算法——欧拉筛

欧拉筛 思路&#xff1a; 对欧拉筛的实现&#xff0c;主要是依靠一个数组模拟的栈来实现&#xff0c;核心思路为用栈储存已经发现的素数 在之后的遍历中&#xff0c;即可以素数数组中的数为因数来筛出此素数的倍数 遍历是以当前的 i i i 值为基数&#xff0c;来乘当前素数数…...

【知识科普】DNS(域名解析服务)深入解读

文章目录 概述一、基本概念二、域名解析的原理三、域名解析的类型四、域名解析的常见问题及解决方法五、域名解析的重要性 部署一、准备环境二、安装DNS软件三、配置DNS服务器四、测试DNS解析五、维护和管理DNS服务器 配置文件一、BIND DNS服务器配置文件格式二、Windows系统DN…...

数据结构第一弹-数据结构在不同领域的应用

大家好&#xff0c;今天和大家一起总结一下数据结构在不同领域和场景的应用~ 不同的数据结构适用于解决不同类型的问题&#xff0c;从简单的数组到复杂的图结构&#xff0c;每种数据结构都有其独特的应用场景。 1. 数组与链表 1.1 概念 数组&#xff1a;一种线性数据结构&a…...

如何创建基于udp的客户端和服务端

1.先创建好udpServer.hpp、udpServer.cc、udpClient.hpp、udpClient.cc的框架。 #pragma once #include <string> #include <iostream> #include <sys/types.h> #include <sys/socket.h> #include <unistd.h> #include <cerrno> #include…...

ThinkPHP框架审计--基础

基础入门 搭建好thinkphp 查看版本方法&#xff0c;全局搜version 根据开发手册可以大致了解该框架的路由 例如访问url http://127.0.0.1:8094/index.php/index/index/index 对应代码位置 例如在代码下面添加新方法 那么访问这个方法的url就是 http://127.0.0.1:8094/index.…...

Java8 CompletableFuture异步编程

文章目录 CompletableFuturede介绍CompletableFuturede使用场景常用异步编程实现方案- Thread- ExecutorService- CountDownLatch- CyclicBarrier- ForkJoinPool- CompletableFuture各种实现方案总结 CompletableFuturede结构结构梳理- Future接口- CompletionStage接口常用方法…...

Java的Mvc整合Swagger的knife4框架

Swagger的介绍 Swagger 是一个规范和完整的框架&#xff0c;用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。使用Swagger&#xff0c;就是把相关的信息存储在它定义的描述文件里面&#xff08;yml或json格式&#xff09;&#xff0c;再通过维护这个描述 文件可以去更…...

分阶段构建在复杂系统中的应用:以推荐系统为例

引言 在信息技术飞速发展的今天&#xff0c;复杂系统的构建已经成为许多企业和组织面临的重要挑战。复杂系统通常由多个相互依赖、相互作用的组件构成&#xff0c;这些组件在功能上相互关联&#xff0c;形成了一个高度耦合的整体。对于这样的系统&#xff0c;采用分阶段构建的…...

2024年12月9日历史上的今天大事件早读

1447年12月9日 中国明朝皇帝明宪宗出生 1824年12月9日 西属美洲独立战争的阿亚库乔之战爆发 1882年12月9日 中国清代数学家李善兰逝世 1917年12月9日 葡萄牙共和政府垮台 1935年12月9日 红军表示与东北抗联军一致抗日 1935年12月9日 “一二九”运动爆发 1941年12月9日 中…...

快捷构建AI大模型,源码自取可直接运行

Node.js 和 WebSocket 实现一个基于kimi&#xff08;Moonshot 月之暗大模型&#xff09;的AI工具 前端&#xff1a;前端界面比较容易&#xff0c;只需要简单的额css js即可&#xff0c;本文使用vue作为作为demo。 后端&#xff1a;我java很垃圾&#xff0c;写不出好的代码&am…...

怎么为开源项目做贡献提PR?

GitHub 慢的话&#xff0c;https://ask.csdn.net/questions/8166374 复刻项目 以 https://github.com/open-frame/uniapp-init 项目为例 复刻完就会在你的仓库里有个同样的项目 拉取复刻下来的项目 然后常规的改动项目、git推送。比如我改了一个忽略文件&#xff1a; 提交…...

如何在 JavaScript 中设置定时器?

在 JavaScript 中&#xff0c;设置定时器通常使用两个内置的函数&#xff1a;setTimeout() 和 setInterval()。它们允许你在指定的时间延迟后执行某个函数或者以某个间隔反复执行某个函数。下面&#xff0c;我将结合实际项目代码示例讲解如何使用它们。 1. setTimeout() — 延…...

【学习路线】Java

Java基础 基础 基础语法 面向对象 集合框架 JCF 进阶 并发编程 JVM 企业级开发 框架 Spring Boot Spring Cloud 分布式 高性能 高可用 安全 基建 Docker 实战 数据库 MySQL Redis 计算机基础 计算机组成原理 操作系统 计算机网络 数据结构与算法 设计模式 参考&#xff1a;…...

[GYCTF2020]Easyphp

[GYCTF2020]Easyphp 知识点 反序列化 、字符逃逸 解题 审代码 <?php error_reporting(0); session_start(); function safe($parm){$array array(union,regexp,load,into,flag,file,insert,"",\\,"*","alter");return str_replace($arr…...

JavaScript 数组的高级用法与最佳实践

在前端开发中&#xff0c;JavaScript 数组是不可或缺的工具。它们不仅用于存储数据&#xff0c;还提供了丰富的方法来操作和处理这些数据。掌握 JavaScript 数组的高级用法和最佳实践对于编写高效、可维护的代码至关重要。本文将深入探讨 JavaScript 数组的高级用法&#xff0c…...

通信协议 http、tcp、udp

目录 1. 五层网络协议 2. http 3. tcp、udp 4. tcp 3次握手、4次挥手 5. socket 6. httpclient 遇到的问题 1. Q: 使用 EntityUtils.toString(responseEntity, "UTF-8") 中文乱码 2. Q: org.apache.http.NoHttpResponseException: 221.6.16.203:8890 failed …...

Scala的隐式对象和隐式类

1.隐式对象 object Test1 {case class DatabaseConfig(drive:String,url:String)//隐式对象//格式:就是在对象前面加一个 implicit//作用:给函数当默认值implicit object MySqlConfig extends DatabaseConfig("sqlserver.jdbc","localhost:3306")//定义一…...

【AIGC】2016-ACCV-即时追捕:自然环境下的自动唇音同步

2016-ACCV-Out of time: automated lip sync in the wild 摘要1. 引言1.1 相关作品 2. 表示和架构2.1 音频流2.2 视觉流2.3 损失函数2.4 训练 3. 数据集3.1 编制训练数据 4. 实验4.1 确定口型同步误差4.2 应用&#xff1a;主动说话人检测4.3 应用&#xff1a;唇读 5. 结论参考文…...

启智畅想集装箱箱号识别算法,2台相机即可实现较高识别率

启智畅想集装箱箱号识别算法&#xff0c;在货车通道中使用时&#xff0c;一般配备2台相机即可。启智畅想集装箱箱号识别算法&#xff0c;在货车通道中使用时&#xff0c;一般配备2台相机即可实现对集装箱箱号的精准捕捉与识别。这两台相机分别安装在货车通道的后侧和随意侧面&a…...

让IIS支持PUT请求解决IIS里不支持PUT请求的问题405 Method Not Allowed

文章目录 一、问题描述二、解决方案1.删除WebDav模块2.修改Web.config&#xff08;可选&#xff09; 一、问题描述 好不容易系统开发好了&#xff0c;兴高采烈地上线&#xff0c;部署好了网站&#xff0c;访问正常&#xff0c;打开方式正确&#xff01; 但当我修改某些数据时&…...

小白也能懂的Qwen3-VL微调教程:图文识别模型定制化入门

小白也能懂的Qwen3-VL微调教程&#xff1a;图文识别模型定制化入门 1. 为什么需要微调Qwen3-VL模型&#xff1f; Qwen3-VL是阿里云推出的新一代视觉语言模型&#xff0c;它能同时理解图片和文字内容。这个模型预训练时已经学会了很多通用技能&#xff0c;比如识别常见物体、理…...

Electron应用打包体积优化实战:从30MB瘦身到15MB,我的electron-builder.yml配置清单

Electron应用打包体积优化实战&#xff1a;从30MB瘦身到15MB 最近在优化一个Electron应用的打包体积时&#xff0c;发现初始生成的安装包竟然达到了30MB。经过一系列配置调整和优化&#xff0c;最终成功将体积缩减到15MB。这个过程让我深刻体会到&#xff0c;electron-builder…...

springboot-vue基于web的智慧校园学生信息管理平台设计和实现

目录技术栈选择系统模块划分开发流程规划关键代码示例&#xff08;后端&#xff09;部署方案扩展性考虑注意事项项目技术支持源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作技术栈选择 后端采用Spring Boot框架&#xff0c;提供RESTful AP…...

Taho移动端展望:社区钱包的未来发展路线图

Taho移动端展望&#xff1a;社区钱包的未来发展路线图 【免费下载链接】extension Taho, the community owned and operated Web3 wallet. 项目地址: https://gitcode.com/gh_mirrors/ex/extension Taho作为社区拥有和运营的Web3钱包&#xff0c;正在重新定义去中心化金…...

高维问题如何“降维计算”:矩阵映射、卷积与拆分汇总

你在课程里提到一个很重要的工程化思想&#xff1a; 高维问题看起来复杂&#xff0c;但很多计算可以通过“拆分再计算”的方式降维处理 这篇把它整理成一条可复述的主线&#xff0c;重点放在&#xff1a; 为什么能拆拆完怎么汇总和矩阵/卷积的关系是什么 先说明一个常见误解&am…...

用快马平台快速生成排序算法可视化原型,直观理解算法逻辑

用快马平台快速生成排序算法可视化原型&#xff0c;直观理解算法逻辑 最近在学习算法时&#xff0c;发现单纯看代码很难理解排序算法的具体执行过程。于是想做一个可视化工具&#xff0c;能够直观展示不同排序算法的执行步骤。传统方式从零开始写代码很耗时&#xff0c;但使用…...

嵌入式开发:裸机到OS的技术挑战与优化

嵌入式开发从裸机到操作系统的技术挑战分析1. 系统性能需求变化1.1 CPU运行速度要求嵌入式系统引入操作系统后&#xff0c;CPU需要承担额外的调度开销。实时控制系统通常需要1ms甚至更短的tick间隔来保证控制精度&#xff0c;这进一步增加了CPU的负担。现代32位微控制器的性能提…...

java新手福音:用快马ai生成渐进式八股文学习项目,轻松入门核心知识

作为一个Java新手&#xff0c;刚开始接触"八股文"这个概念时&#xff0c;我完全摸不着头脑。直到在InsCode(快马)平台上尝试了他们的Java学习项目生成功能&#xff0c;才发现原来枯燥的理论知识可以变得这么生动有趣。 渐进式学习路径设计 这个项目最让我惊喜的是它的…...

微信小程序onLaunch异步问题实战:如何确保Page的onLoad在onLaunch完成后执行?

微信小程序异步初始化难题&#xff1a;5种方案确保onLaunch与onLoad的执行顺序 微信小程序的启动流程看似简单&#xff0c;却隐藏着一个让不少开发者踩坑的异步陷阱。当你在app.js的onLaunch中进行网络请求或异步操作时&#xff0c;页面层级的onLoad可能已经迫不及待地开始执行…...

风电功率预测发SCI,别只盯着1区:这些2/3区‘潜力股’期刊也许更适合你

风电功率预测SCI投稿策略&#xff1a;如何在中科院2/3区期刊高效突围 风电功率预测作为新能源与人工智能交叉领域的热点方向&#xff0c;近年来在学术期刊投稿竞争日趋激烈。许多研究者习惯性瞄准中科院1区顶刊&#xff0c;却忽略了审稿周期长、录用率低的现实困境。事实上&…...