一些特殊的数论卡常技巧

约数个数前缀和

\(F\left(n\right)=\sum\limits_{i=1}^n\sum\limits_{j\vert i}1=\sum\limits_{i=1}^n\left\lfloor\frac{n}{i}\right\rfloor=\sum\limits_{ij\le n}1=2\sum\limits_{i=1}^{\left\lfloor\sqrt n\right\rfloor}\left\lfloor\frac{n}{i}\right\rfloor-\left\lfloor\sqrt n\right\rfloor^2\)

PS: 这个东西也能用 Stern-Brocot 树进一步优化到 \(O\left(n^{1/3}\log n\right)\) 我觉得没人考场写这个

约数和前缀和

\(F\left(n\right)=\sum\limits_{i=1}^n\sum\limits_{j\vert i}j\)
这个东西等价于在 \(x\in \left[1,n\right]\)\(y=\frac{1}{x}\) 曲线下所有整点的纵坐标之和。
枚举 \(i,j\) 中较小的一个
\(F\left(n\right)=\sum\limits_{i=1}^{\left\lfloor\sqrt n\right\rfloor}i\left(\left\lfloor\frac{n}{i}\right\rfloor-i\right)+\sum\limits_{j=i}^nj\)

已知质数幂处点值的狄利克雷卷积

\(F = G\times H\)
可以发现 \(H = \prod\limits_{p\in prime}H_p\)
那么可以对每个 \(G_p\) 拆开,单独与 \(F\) 做狄利克雷乘法。
复杂度优化到了 \(O\left(n\log\log n\right)\),常数也很小。

原文地址:https://www.cnblogs.com/bestlxm/p/13057690.html