整除分塊
用於計算$\sum_{i=1}^n f(\lfloor{n/i} \rfloor)*i$之類的函式
整除的話其實很多函式值是一樣的,對於每一塊一樣的商集中處理即可
若一個商的左邊界為l,則右邊界為$\lfloor{\frac{n}{\lfloor\frac{n}{l}\rfloor}}\rfloor$
這樣時間複雜度就是$O(\sqrt{n})$
如果是類似$\sum_{i=1}^n f(\lfloor{n/i} \rfloor)*i \ opt \ f(\lfloor{m/i} \rfloor)$
就讓r=$min(\lfloor{\frac{n}{\lfloor\frac{n}{l}\rfloor}}\rfloor,\lfloor{\frac{m}{\lfloor\frac{m}{l}\rfloor}}\rfloor)$
這樣的話記得另$l<=min(n,m)$,否則會出現除以0的情況
莫比烏斯函式
如果n的因數中沒有平方數,則$\mu n=(-1)^k$,k為n質因數的個數
否則$\mu n=0$
特別的,$\mu 1=1$
這樣就可以得到一個性質:一個數所有因數的$\mu$之和等於0,除非這個數是1
證明:設m有n個質因數,則原式$=1-C_n^1+C_n^2-C_n^3...C_n^n$
結合二項式定理:原式$=(1-1)^n=0$,證畢
這個性質很常用,比如$[gcd(i,j)]=1$這類式子可以轉化成$\sum_{d|gcd(i,j)} \mu(d)$
莫比烏斯反演
若$F(x)=\sum_{d|x} f(x)$
那麼$f(x)=\sum_{d|x} F(d)*\mu(x/d)$
但一般而言用的更多的是莫比烏斯函式的性質