原文:线性筛(欧拉筛)

昨天的考试跪的一塌糊涂:第一题水过,第二题带WA的朴素,最后题忘了特判左端点全跪,分数比起预计得分整整打了个对折啊 步入正题:线性筛 欧拉筛 一般的筛法 PPT里叫埃拉托斯特尼筛法,名字异常高贵 的效率是O NlglgN 其实很接近O n 啊 ,对于一些例如N 的残暴数据会跪,于是,线性筛登场了 以上是线性筛代码。 就我的理解,线性筛有两个地方与一般筛不同: .两层循环的顺序不同 一般筛是第一维p ...

2013-08-03 15:02 5 18904 推荐指数:

查看详情

线性素数(

线性是一个很基础的算法,但是我一直没学。直到一次考试,因为O(n√n)会超时,用了表,结果被卡了代码长度,于是开始学习。 算法思路: 对于每一个数(无论质数合数)x,掉所有小于x最小质因子的质数乘以x的数。比如对于77,它分解质因数是7*11,那么掉所有小于7的质数*77, ...

Wed Oct 10 00:50:00 CST 2018 0 5742
线性函数

蒟蒻要开始打数论模板了。 函数:小于n且与n互素的数个数,记为φ(n) 它有这样几个优越的性质:转自https://yq.aliyun.com/articles/15314 1. phi(p) == p-1 因为素数p除了1以外的因子只有p,所以与 p 互素的个数是 p ...

Thu Sep 14 03:11:00 CST 2017 0 1390
【学习笔记】线性函数

目录 Bases 筛法 Code View Bases 这里给出的筛法是以线性素数的方法为基础的。 利用了函数是积性函数的性质:对于任意互质的数\(a\),\(b\),有\(f(a*b)=f(a)*f(b)\) 筛法 类比于线性素数 ...

Fri Aug 07 22:57:00 CST 2020 0 1157
由素数筛法到函数(函数,线性

前言 蒟蒻最近准备狂补数学啦TAT 基于素数,可以同时快速求出函数。于是蒟蒻准备从这里入手,整理一下实现的思路。 素数及其一种改进写法 传统素数的做法(埃式)是,利用已知的素数,去掉含有此质因子的合数,十分巧妙。由于不是本文的重点,就只贴一下代码吧 复杂度不会证 ...

Thu Apr 26 07:04:00 CST 2018 0 1550

质数 也称线性 它比时间复杂度为 \(O(n\log\log n)\) 的埃氏更优,因为埃氏会有重。 保证每个合数只会被它的最小质因数掉,所以每个数只会被一次。 时间复杂度 \(O(n)\) 函数 特殊地,对于一个质数 \(p ...

Sun Nov 14 05:35:00 CST 2021 0 328
【学习笔记】筛法(线性素数)

算法介绍:筛法是在O(N)线性时间内实现素数筛选的优秀算法。 算法思路:总体上与Eratosthenes筛法类似,也是用较小的数去较大的合数。 关键思路在于:每一个合数都保证是被其最小的质因子去的,下简称称该条件为线性条件。 结合代码分析: 对每一个数i,无论其是否为质数 ...

Mon Oct 25 02:20:00 CST 2021 0 1121
线性求质数】【最小质因数】浅析

【算法简介】   由于每个大于等于2的合数必定存在一个最小的质因数,所以只要去每个质数的倍数就相当于去了所有合数。但相比埃氏最大的优化就在于保证每个合数只被了一次,且是被其最小的质因数去的,所以的时间复杂度可以达到O(N)。   而如何保证每个合数都只 ...

Wed Oct 17 22:17:00 CST 2018 0 1085
函数 【数学】

系列 函数:phi(i)表示 1~i 中与 i 互质的数的个数。 利用这个定义就可以在素数的同时,求出函数。 设 函数 为 phi(x) , p 为素数: 1、如果 i % p == 0 ,那么 phi (i*p) = phi (i) * p。 显然,与 i ...

Sun Aug 19 04:04:00 CST 2018 0 827
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM