数学 · 初探莫比乌斯2

· · 个人记录

数学是困难的,但也是美丽的。你已经叩开了莫反的大门,你将马上感受到它无穷的魅力。

请确保已经学会 这里 的全部内容。我们只需要用这里的那一条性质,不需要卷积等其他知识。其实这条性质就已经能解决我们现在的大部分问题。

P2257 YY的GCD

这题和 P3455 [POI2007]ZAP-Queries 非常像。我们在 上篇 已经讲过,默认大家已经会 P3455 这一题。

设质数为 k,如果暴力枚举 k,那做法和 P3455 就一模一样。先将 gcd(x,y) = k 的问题转化为互质问题。

我们暴力写出式子:

\sum\limits_{x = 1}^{n/k} \sum\limits_{y=1}^{m/k} \sum\limits_{d|gcd(x,y)}\mu(d)$ $(k \in prime)

转化为枚举 d,求满足要求的 x,y 对数。

\sum\limits_{d = 1}^{min(n,m)}\mu(d) \left\lfloor\dfrac{n}{kd}\right\rfloor \left\lfloor\dfrac{m}{kd}\right\rfloor$ $(k \in prime)

这时候我们继续考虑优化。我们其实是枚举 kd,将和 kd 有关的式子累计进入答案。我们反过来,尝试枚举 T=kdk,并直接算出 d

\left\lfloor\dfrac{n}{T}\right\rfloor \left\lfloor\dfrac{m}{T}\right\rfloor \sum\limits_{k | T}\mu(\dfrac{T}{k}) $ $(k \in prime)

前面依旧整除分块,而我们惊喜的发现后面的

对于每个 $i$,找出所有 $\mu(\dfrac{i}{p_j}) (p_j|i)$ 累加就行。 还是反着想,我们先枚举 $p_j$,枚举它的 $k$ 倍,将 $t[p_j \times k]$ 累加 $\mu(k)$ 即可。 *** #### [P2398 GCD SUM](https://www.luogu.com.cn/problem/P2398) 依旧是枚举 $g=gcd(i,j)$ , 看有多少组 $i,j$ 满足条件。(都套路了) 答案转化为 $\sum\limits_{g = 1}^{n} \sum\limits_{i=1}^{n} \sum\limits_{j=1}^{n} [gcd(i,j)=g] \times g

(如果 gcd(i,j) = g,就说明 g 在答案的系数要加1,答案就加 g)

发现和上一题一模一样好嘛!!!只不过 g 不一定是质数罢了。

\sum\limits_{i = 1}^{n/g} \sum\limits_{j = 1}^{n/g} \sum\limits_{d|gcd(i,j)}\mu(d) \sum\limits_{d = 1}^{n/g}\mu(d) \left\lfloor\dfrac{n}{gd}\right\rfloor \left\lfloor\dfrac{n}{gd}\right\rfloor \left\lfloor\dfrac{n}{T}\right\rfloor \left\lfloor\dfrac{n}{T}\right\rfloor \sum\limits_{g | T}\mu(\dfrac{T}{g}) \times g 这种做法的复杂度已经低于题目要求。(这题直接枚举 $g$ 就能过),提交可以参考 [UVA11426 拿行李(极限版) GCD - Extreme (II)](https://www.luogu.com.cn/problem/UVA11426) 这一题数据范围更大,并且这两题只有范围不同。 是不是发现本质都是差不多的? *** #### [P1829 [国家集训队]Crash的数字表格 / JZPTAB](https://www.luogu.com.cn/problem/P1829) 本题求 $\sum\limits_{i=1}^{n} \sum\limits_{j=1}^{m}lcm(i,j)$ , $lcm(i,j)$ 不会求,就转化成 $\dfrac{i \times j}{gcd(i,j)}

= \sum\limits_{i=1}^{n} \sum\limits_{j=1}^{m}\dfrac{i \times j}{gcd(i,j)}

套路,改成枚举 g = gcd(i,j),找到一组满足条件的 i,j。并将答案累计 \dfrac{i \times j}{g}

\sum\limits_{g|i}^{n} \sum\limits_{g|j}^{m} [gcd(i,j)=g] \times \dfrac{i \times j}{g}

是不是又很熟悉?!跟上两题几乎一样,但是最后一项和 i,j 有关,导致可能不能直接累加答案,我们继续化简。我们其实枚举 i 枚举的是 i = g, 2g,3g…… 我们改成枚举 i1,2,3,并将后面的 i 替换成 ig , j 同理。

\sum\limits_{i=1}^{n/g} \sum\limits_{j=1}^{m/g} \times i \times j \sum\limits_{d|gcd(i,j)}\mu(d)

由于式子中带 i,j ,每个 i,j 的贡献都不同,在枚举 d 时我们不能简单地将其化为 \left\lfloor\dfrac{n}{gd}\right\rfloori 这样的形式。

\sum\limits_{d = 1}^{n/g}\mu(d) \sum\limits_{d|i}^{n/g} \sum\limits_{d|j}^{m/g} \times i \times j $=\sum\limits_{g = 1}^{min(n,m)}g \times \sum\limits_{d = 1}^{n/g}\mu(d) \sum\limits_{i}^{n/gd} \sum\limits_{j}^{m/gd} \times i \times j \times d^2

我们细细观察上面这个式子,发现当 n/g 不变时,

\sum\limits_{i}^{n/gd} \sum\limits_{j}^{m/gd} \times i \times j$ 不变, 而 $\sum g$ 可以预处理,一次整除分块来了。 而当 $n/gd$ 不变时 $\sum\limits_{i}^{n/gd} \sum\limits_{j}^{m/gd} \times i \times j$ 也不变。 而 $\sum\ \mu(d) \times d^2$ 也可以预处理!第二次整除分块来了! 就这样,两次整除分块,漂亮的解决了这道题。 *** #### [SP5971 LCMSUM - LCM Sum](https://www.luogu.com.cn/problem/SP5971) 然而有的时候我们也不能太过套路,上来就反演,而丧失了更简便的解法。比如这道题,很显然是上一道题的弱化版。 该上的套路还是要上的: $=\sum\limits_{i=1}^{n} \dfrac{i\times n}{gcd(i,n)} \sum\limits_{g|i}^{n} [gcd(i,n)=g] \times \dfrac{i \times n}{g} g|i$ 很烦,把它处理掉,后面的 $i$ 都换成 $ig \sum\limits_{i=1}^{n/g} [gcd(ig,n) = g] \times i \sum\limits_{i=1}^{n/g} [gcd(i,n/g) = 1] \times i

我们发现 \sum\limits_{i=1}^{n/g} [gcd(i,n/g) = 1] \times i 这个式子很熟悉。意思是如果 i,n/g 互质,就把答案累计 i 的贡献。等价于求 1~n/g 中与 n/g 互质的数的和。

如果你发现不熟悉,请看看 欧拉函数 的第一条性质。

那么原式就化为

\varphi(n/g) \times (n/g)/2

后面的式子可以预处理。

虽然没用到莫比乌斯,但大体思路和上面几道题极其相似。当你发现一个个数学模块相互联系的时候,会不会感到非常神奇?不会。OI 考数学就离谱

好吧,无论如何,我相信我们都已经对莫比乌斯有了初步的了解。

在这里把 题单 分享给大家。

~~8888