[洛谷P4213]【模板】杜教筛(Sum)(杜教筛讲解)
题面 https://www.luogu.com.cn/problem/P4213 题解 前置知识 线性筛积性函数: https://www.cnblogs.com/zhoushuyu/p/8275530.html 莫比乌斯反演:《具体数学:计算机科学基础》4.9节 数论分块: https://www.cnblogs.com/xh092113/p/12269753.html 杜教筛 对于一些数论函数,杜教筛可以在低于线性的时间复杂度内求出其前缀和。 适用范围:对于数论函数f,g,h,如果g、h的前缀和能够 \(O(1)\) 求解,并且有 \[h=f{\times}g\] (其中 \({\times}\) 表示狄利克雷卷积) 那么,我们可以在低于线性的时间复杂度内求出f的前缀和。原理如下:(以下sf,sg,sh分别表示f,g,h的前缀和) \[h(n)={\sum\limits_{d1d2=n}}f(d1)g(d2)\] \[{\sum\limits_{i=1}^{n}}h(i)={\sum\limits_{d1d2{\leq}n}}f(d1)g(d2)\] \[sh(i)={\sum\limits_{d2=1}^{n}}g(d2){\sum\limits_{d1=1}^{{\lfloor}{\frac{n}{d1}}{\rfloor}}}f(d1)\] \[={\sum