题解链接
题解的方法是错误的。如果作者所指的表是预处理 d(n)d(n)d(n),那么用数论分块依旧需要 O(n)O(\sqrt{n})O(n) 才能计算 ∑i=n−Bnd(i)\sum\limits_{i=n-B}^{n}d(i)i=n−B∑nd(i)。为什么说如果,因为作者指出完成预处理只需 O(n)O(\sqrt{n})O(n) 的复杂度。
作者能不能在确保读懂题意的情况下再尝试做本题?(作者没有尝试写过这道题)