Luogu5348 密码解锁

题面

题解

\(N = \dfrac nm\)

这道题目就是要求\(a_m = \sum_{i=1}^N \mu(i)\mu(im)\)

因为\(\mu(ij) = \mu(i)\mu(j)[\gcd(i, j) = 1]\)

所以\(a_m = \mu(m)\sum_{i=1}^N \mu^2(i) [\gcd(i, m) = 1]\)

\(\mathbf S(n, m) = \sum_{i=1}^n \mu^2(i)[\gcd(i, m) = 1]\)

则有:

\[\begin{aligned} \mathbf S(n, m) &= \sum_{i=1}^n\mu^2(i)\sum_{d|i, d|m}\mu(d) \\ &= \sum_{d|m} \mu(d) \sum_{d|i}^n \mu^2(i) \\ &= \sum_{d|m} \mu(d) \sum_{i=1}^{n/d} \mu^2(id) \\ &= \sum_{d|m} \mu(d) \sum_{i=1}^{n/d} \mu^2(i)\mu^2(d)[\gcd(i, d) = 1] \\ &= \sum_{d|m} \mu^3(d) \sum_{i=1}^{n/d} \mu^2(i)[\gcd(i, d) = 1] \\ &= \sum_{d|m} \mu(d) \mathbf S\left(\left\lfloor\frac nd \right\rfloor, d\right) \end{aligned} \]

于是就可以递归处理了。

不过数据太水,\(\mathrm{O}(\sqrt n)\)\(\mu\)都可以过,上面那个东西不记忆化都可以过,也是毒瘤了。

代码就不放了,太丑了。

posted @ 2019-05-05 12:53  xgzc  阅读(314)  评论(0编辑  收藏  举报