BZOJ4804 欧拉心算

https://hydro.ac/p/bzoj-P4804

\[\begin{aligned} \sum_{i = 1}^n \sum_{j = 1}^n \varphi(\gcd(i, j)) &= \sum_{d = 1}^n \varphi(d) \sum_{i = 1}^n \sum_{j = 1}^n [\gcd(i, j) = d] \\ &= \sum_{d = 1}^n \varphi(d) \sum_{i = 1}^{\lfloor\frac{n}{d}\rfloor} \sum_{j = 1}^{\lfloor\frac{n}{d}\rfloor} [\gcd(i, j) = 1] \\ &= \sum_{d = 1}^n \varphi(d) \sum_{i = 1}^{\lfloor\frac{n}{d}\rfloor} \sum_{j = 1}^{\lfloor\frac{n}{d}\rfloor} \sum_{k \mid \gcd(i, j)} \mu(k) \\ &= \sum_{d = 1}^n \varphi(d) \sum_{k = 1}^{\lfloor\frac{n}{d}\rfloor} \mu(k)\left\lfloor\frac{n}{dk}\right\rfloor^2 \end{aligned} \]

\(t = dk\),则

\[\begin{aligned} &= \sum_{t = 1}^n \sum_{d \mid t} \varphi(d)\mu\left(\frac{t}{d}\right)\left\lfloor\frac{n}{t}\right\rfloor^2 \\ &= \sum_{t = 1}^n (\varphi * \mu)(t)\left\lfloor\frac{n}{t}\right\rfloor^2 \end{aligned} \]

线性筛筛出 \(\varphi * \mu\),整除分块计算即可。

posted @ 2026-06-01 13:18  Sunsoak  阅读(8)  评论(0)    收藏  举报