莫比乌斯

莫比乌斯反演入门

梦想与她 提交于 2019-11-28 17:42:28
      转载自----- http://blog.csdn.net/qw4990/article/details/14055183 这个文章主要讲一下ACM中1个常用的莫比乌斯反演公式,看到很多博客上面公式是有,但是都没证明,《组合数学》上的证明又没看懂, 就自己想了种证明方法,觉得比《组合数学》的证明简单些,就写一下,希望对初学莫比乌斯反演的同学有帮助。 PS:下面公式出现的sigma是累加,另外建议大家看的时候 把公式在纸上写出来! 一:什么是莫比乌斯反演 简单点的说,就是先给出一个函数 F(n) ,然后再由 F(n)定义一个新函数 G(n) 其中 G(n) = sigma(F(d)) (其中d被“包含”于n) 然后 现在我们不知道 F(n)的值 , 却知道 G(n), 接着我们就可以通过 反演由G(n)反向得到F(n) 什么叫 (其中d被“包含”于n) ?以及怎么理解反演? 通过下面的几个例子说明 例1: 我们直接定义 G(n)=sigma(F(i)) (1<=i<=n) {这里的每个F(i),相对于G(n)实际上就是一种包含关系了!!} 然后我们现在已经知道 G(n)=n*(n+1)/2; 接下来 我们要通过 G(n)反向得到F(n) 的过程,就是反演 当然,这个问题很简单,很容易都可以看出来 F(n)=n ~~ ----------------------------

莫比乌斯反演

久未见 提交于 2019-11-28 17:42:16
莫比乌斯反演 (PS:在评论区中众多dalao的催促下,我认真的写了三天三夜写完了这篇 杜教筛 ,保证是精品!) 前言 (这大概是我第一次写学习笔记吧OvO) 可能每一个刚开始接触莫比乌斯反演的OIer,起初都会厌恶这个神奇的东西。 (我也一样233) 每一个人厌恶的原因有许多,可能是这个烦人的式子,也可能仅仅只是因为不理解 \(\mu\) 函数而感到不爽。当然,莫比乌斯反演有一个小小的预备知识: 整除分块 那么我们先从莫比乌斯反演中最基础的莫比乌斯函数 \(\mu\) 开始说起: 莫比乌斯函数 首先,我们可以先明确一点,莫比乌斯函数并不是什么很高大上的东西,它其实只是一个由容斥系数所构成的函数。 \(\mu(d)\) 的定义是: 当 \(d=1\) 时, \(\mu(d)=1\) ; 当 \(d=\Pi_{i=1}^{k}p_i\) 且 \(p_i\) 为互异素数时, \(\mu(d)=(-1)^k\) 。(说直白点,就是 \(d\) 分解质因数后,没有幂次大于平方的质因子,此时函数值根据分解的个数决定); 只要当 \(d\) 含有任何质因子的幂次大于等于2,则函数值为0. 当然,莫比乌斯函数也有很多有趣的性质: 对于任意正整数 \(n\) , \(\sum_{d|n}\mu(d)=[n=1]\) 。( \([n=1]\) 表示只有当 \(n=1\) 成立时,返回值为 \(1\)

一个莫比乌斯等式的证明

ぐ巨炮叔叔 提交于 2019-11-27 22:18:50
证:$\displaystyle \sum_{i=1}^n \mu (i)^2 = \sum_{i=1}^{\left \lfloor \sqrt n \right \rfloor}\mu (i)\left \lfloor \frac{n}{i^2} \right \rfloor$,其中 $\mu (x)$ 为莫比乌斯函数. 分析: 在等式的推到中,最重要的是理解一个等式的含义。 上式左边其实是求 $1 \sim n$ 中无平方因子数的个数,右边相当于枚举 $n$ 的平方因子,再乘以容斥系数。 因此,也找到了 严格 证明的方法了。 证: 设 $f(x)$ 为 $x$ 的最大的平方因子。 于是 $\displaystyle \sum_{i=1}^n \mu (i)^2 = \sum_{i=1}^n[f(i)==1]$(最大平方因子为1)。 使用经典套路: $$ \begin{aligned} \sum_{i=1}^n \mu (i)^2 & = \sum_{i=1}^n[f(i)==1]\\ &= \sum_{i=1}^n\varepsilon(f(i))\\ &= \sum_{i=1}^n\sum_{d|f(i)}\mu (d) \end{aligned}$$ 改变枚举顺序: $$ \begin{aligned} \sum_{i=1}^n\sum_{d|f(i)}\mu(d) &

莫比乌斯反演入门

拥有回忆 提交于 2019-11-27 13:59:00
。。。。您点进来我的博客,想必是信任我这个新初一大菜鸡能讲清楚吧!可是我来写这篇博客,完全是因为考试的时候看到数学题推到类似∑∑【gcd(i,j)==1】的式子就推不下去了。其实莫比乌斯反演就是求这样的东西的。 对于这样的式子,我经常说一句话:当年bmh201708普及组的时候提前30分钟出考场吊打提高组,就是冲着数学题去AK的 对于这样的人,我们用3个字形容他:金艺轲! 首先声明一点:我不会markdown 我zbs用莫比乌斯定理不是问题:【n==1】=∑mu(d)(d|n) 如果这个式子带进去,将绝杀。而且可以带 单走一个交换枚举项,不用说,他死定了:∑∑[gcd(i,j)==1] =∑∑∑mu(d)(d|gcd(i,j))=∑mu(d)∑∑(d|i&&d|j) (到这里,有没有发现gcd(i,j)的所有因数都是i和j的因数?) 给莫比乌斯倒一杯卡布奇诺! 原式=∑mu(d)[n/d]*[m/d] 后面整数分块处理O(sqrt(n)),前面莫比乌斯函数因为是积性函数,所以直接上欧拉筛。 你卡掉我试试!你能把我zbs卡掉?卡掉我当场吃屎! https://www.luogu.org/record/22884149 来源: https://www.cnblogs.com/zbsakioi/p/11366682.html

[BZOJ 2820] YY的gcd(莫比乌斯反演+数论分块)

你说的曾经没有我的故事 提交于 2019-11-27 13:58:42
[BZOJ 2820] YY的gcd(莫比乌斯反演+数论分块) 题面 给定N, M,求 \(1\leq x\leq N, 1\leq y\leq M\) 且gcd(x, y)为质数的(x, y)有多少对。q组询问 分析 我们要求的是 \[\sum_{p \in P} \sum_{i=1}^n \sum_{j=1}^m [gcd(i,j)=p]\] (大写P表示质数集合) 根据 \(kgcd(i,j)=gcd(ki,kj)\) , \[原式=\sum_{p \in P} \sum_{i=1}^{\lfloor n/p \rfloor} \sum_{j=1}^{\lfloor m/p \rfloor} [gcd(i,j)=1]\] 又根据莫比乌斯反演里的一个常用结论(证明见 BZOJ 2301 ) \[\sum_{i=1}^n \sum_{j=1}^m [gcd(i,j)=1]= \sum_{d=1}^{min(n,m)} \mu(d ) \lfloor \frac{n}{d} \rfloor \lfloor \frac{m}{d} \rfloor\] \[原式=\sum_{p \in P} \sum_{d=1}^{min( \lfloor n/p \rfloor, \lfloor m/p \rfloor)} \mu(d) \lfloor \frac{n}{pd} \rfloor

莫比乌斯反演求LCM的另一种做法

两盒软妹~` 提交于 2019-11-27 05:49:04
一个经典问题 求 \[ \sum_{k=1}^n\mathbb{lcm}(k,n) \] 一般的做法是使用 \(\varphi(n)\) 函数。 不经典的做法 \[ \begin{align*} \sum_{k=1}^n\mathbb{lcm}(k,n) &=\sum_{k=1}^n\frac{nk}{\gcd(n,k)}\\ &=\sum_{d|n}\sum_{k=1}^{n/d}\frac{ndk}{d}[\gcd(n,dk)=d]\tag{枚举gcd(n,k)}\\ &=\sum_{d|n}\sum_{k=1}^{n/d}nk[\gcd(\frac{n}{d},k)=1]\tag{同消去d}\\ &=n\sum_{d|n}\sum_{k=1}^dk[\gcd(d,k)=1]\tag{用d代替n/d}\\ &=n\sum_{d|n}\sum_{k=1}^dk\sum_{j|gcd(d,k)}\mu(j)\tag{莫比乌斯函数的性质}\\ &=n\sum_{j|n}\mu(j)\sum_{d|n/j}\sum_{k=1}^djk\tag{交换求和次序}\\ &=n\sum_{j|n}\mu(j)j\sum_{d|n/j}\frac{d(d+1)}{2}\tag{等差数列求和公式}\\ &=\frac{n}{2}\left(\sum_{j|n}\mu(j)j\sum_{d|n/j

莫比乌斯反演学习笔记

邮差的信 提交于 2019-11-26 17:42:00
昨天知道了莫比乌斯函数,今天就来学学莫比乌斯反演: 莫比乌斯反演: 若 \[F(n)=\sum_{x\mid n}f(x)\] 可以得到一个结论: \[f(n)=\sum_{x\mid n}\mu (x)F(\left \lfloor \frac{n}{d} \right \rfloor)\] 若 \[F(n)=\sum_{n\mid x}f(x)\] 又可以得到一个结论: \[f(n)=\sum_{n\mid x}\mu (\frac{x}{n})F(x)\] 证明我们可以用 狄利克雷乘积 来证明。 算法应用: 此处感谢我们学校的教练——symbol,谢谢您的课件,这给了我很大帮助。 终于可以学习杜教筛了,Yes! 来源: https://www.cnblogs.com/zhouyifei/p/11329483.html

莫比乌斯函数学习笔记

倾然丶 夕夏残阳落幕 提交于 2019-11-26 14:29:30
前言: 继续不务正业…… 莫比乌斯函数: \[\mu (x)\] 算法定义: 1. \[\mu (1)=1\] 2. 当\[x=\prod_{i=1}^{k}p[i]\] 且p[i]为互异素数时 \[\mu (x)=(-1)^{k}\] (就是质因子的幂次小于2) 3.当所有质因子的幂次都大于1 \[\mu (x)=0\] 性质: 1.若 \[n=1\] 则 \[\sum_{x=1}^{n} x\mid n=1\] 否则 \[\sum_{x=1}^{n} x\mid n=0\] 2.\[\sum_{x=1}^{n}x\mid n\frac{\mu(x)}{x}=\frac{\phi(n)}{n}\] 算法实现: 1.筛质数的同时记录幂次 2.然后统计莫比乌斯函数 来源: https://www.cnblogs.com/zhouyifei/p/11323957.html

狄利克雷卷积和莫比乌斯反演

[亡魂溺海] 提交于 2019-11-26 14:26:29
积性函数(前置知识) 积性函数定义: 函数 \(f(x)\) 满足 \(gcd(a, b) = 1\) 时, \(f(ab) = f(a)f(b)\) 则 \(f(x)\) 为积性函数 常见积性函数 (具体证明可以百度=w=) 欧拉函数 \(ϕ(n)\) \(ϕ(n) = n ∗∏(pi − 1)/pi\) 莫比乌斯函数 \(µ(n)\) 当 \(n\) 有平方因子 如 \(n=∏_{i=1}^{t}pi^{ci}(表示n有t个互不相同质因子pi,每个pi的次数是ci)\) 当某 \(ci>=2(即有平方因子)\) ,则 \(µ(n) = 0\) 否则,若 \(n\) 为 \(k\) 个不同质数的乘积, \(µ(n) = (−1)^k\) 除数函数 \(σ_k(n)\) 表示所有正因子的 \(k\) 次幂和 \(σ_0(n) = d(n)\) 表示正因子的个数 \(σ_1(n) = σ(n)\) 表示正因子的和 完全积性函数 幂函数 \(id_k(n) = n^k\) \(id_0(n) = 1(n) =1\) \(id_1(n) = id(n) = n\) 单位函数 \(ϵ(n) = [n = 1]\) : \(即ϵ(n)仅当n=1时值为1,其它都为0\) 狄利克雷卷积 Dirichlet 卷积 对两个数论函数 \(f, g\) ,定义其 Dirichlet 卷积为新函数 \(f

莫比乌斯反演

江枫思渺然 提交于 2019-11-25 16:54:17
## 积性函数 \[\forall p,q \wedge gcd(p,q)=1 , f(pq)=f(p)*f(q)\] \(\mu\) 函数定义 \[ n=a_1^{p_1}*a_2^{p_2}\cdots*a_k^{p_k}\\ \mu(n)=\left\{ \begin{array}{lr} 1,n = 1\\ (-1)^k,a_i=1\\ 0,otherwise \end{array} \right. \] \(\mu\) 函数性质 1. \[ \sum_{d|n}\mu(d)=[n=1] \] ([n=1]表示仅当n=1时返回值为1,其余为0) 2. \[ \sum_{d|n}{\mu(d)\over{d}}={\varphi(n)\over{n}} \] 线性筛莫比乌斯函数 void init() { memset(vis,0,sizeof vis); mu[1]=1; for (int i=2;i<=n;++i) { if (!vis[i]) { mu[i]=-1; prime[++tot]=i; } for (int j=1;j<=tot&&i*prime[j]<=n;++j) { vis[i*prime[j]]=1; if (i%prime[j]==0) { mu[i*prime[j]]=0; break; } else { mu[i*prime[j]]=-mu[i