欧拉函数的特殊性质
欧拉函数与莫比乌斯函数的关系
根据积性函数关系 \(\boldsymbol \varphi=\boldsymbol \mu*\boldsymbol {id}\) 得到
\(\displaystyle \boldsymbol \varphi(n)=\sum_{d\mid n}\boldsymbol \mu(d)\cdot({n\over d})=n\cdot\sum_{d\mid n}{\boldsymbol \mu(d)\over d}\)
故得出推论 \(\displaystyle {\boldsymbol \varphi(n)\over n}=\sum_{d\mid n}{\boldsymbol \mu(d)\over d}\)
或简记为 \(\boldsymbol \varphi\cdot \boldsymbol{id}^{-1}=(\boldsymbol \mu\cdot \boldsymbol {id}^{-1})*\boldsymbol I\)
互质数和
设小于等于 \(n\) 的正整数中,与 \(n\) 互质的数的和为 \(s(n)\)
不难列出关系式 \(\displaystyle s(n)=\sum_{i=1}^ni[gcd(i,n)=1]\)
由莫比乌斯反演可得
\(\displaystyle s(n)=\sum_{i=1}^ni[gcd(i,n)=1]=\sum_{i=1}^ni\sum_{d\mid gcd(i,n)}\boldsymbol \mu(d)=\sum_{d\mid n}\boldsymbol \mu(d)\sum_{i=1}^ni[d\mid i]=\sum_{d\mid n}\boldsymbol \mu(d)\sum_{i=1}^{n\over d}id[1\mid i]=\sum_{d\mid n}\boldsymbol \mu(d)d\sum_{i=1}^{n\over d}i\)
由等差数列求和公式可得 \(\displaystyle \sum_{i=1}^ni={n(n+1)\over 2}\)
故代入可得 \(\displaystyle s(n)=\sum_{d\mid n}\boldsymbol \mu(d)d{({n\over d})\cdot ({n\over d}+1)\over 2}={n\over 2}\cdot [\sum_{d\mid n}\boldsymbol \mu(d)\cdot ({n\over d})+\sum_{d\mid n}\boldsymbol\mu(d)]={n\over 2}\cdot [(\boldsymbol \mu*\boldsymbol {id})(n)+(\boldsymbol \mu*\boldsymbol I)(n)]\)
代入 \(\boldsymbol \mu*\boldsymbol {id}=\boldsymbol \varphi,\boldsymbol \mu*\boldsymbol I=\boldsymbol \varepsilon\) 得 \(\displaystyle s(n)={n(\boldsymbol \varphi+\boldsymbol \varepsilon)(n)\over 2}\)
一般而言,考虑到 \(\boldsymbol \varepsilon(n)=[n=1]= \begin{cases} 1,n=1 \\\ \\ 0,n\neq 1 \end{cases}\)
故代入 \(s(n)\) 得 \(s(n)= \begin{cases} {1\cdot(1+1)\over 2}=1,n=1 \\\ \\ {n\cdot \boldsymbol \varphi(n)+n\cdot 0\over 2}={n\cdot \boldsymbol \varphi(n)\over 2},n\neq 1 \end{cases}\)
\(s(n)\) 的快速求法
由于 \(s(n)\) 本身不具备积性,故在 \(n\) 较大时无法直接求解
但考虑到 \(\displaystyle s(n)={n(\boldsymbol \varphi+\boldsymbol \varepsilon)(n)\over 2}\) 即 \(\displaystyle s={\boldsymbol {id}\cdot(\boldsymbol \varphi+\boldsymbol \varepsilon)\over 2}\)
故 \(2s=\boldsymbol {id}\cdot(\boldsymbol \varphi+\boldsymbol \varepsilon)=\boldsymbol {id}\cdot\boldsymbol \varphi+\boldsymbol {id}\cdot \boldsymbol \varepsilon\)
同样考虑到 \((\boldsymbol {id}\cdot \boldsymbol \varepsilon)(n)=n\cdot[n=1]= \begin{cases} 1\cdot 1=1,n=1 \\\ \\ n\cdot 0=0,n\neq 1 \end{cases}=\boldsymbol \varepsilon(n)\)
代入即可移项得 \(2s-\boldsymbol \varepsilon=\boldsymbol {id}\cdot\boldsymbol \varphi\)
求解 \(s\) 的前缀和只需求解 \(\boldsymbol f=\boldsymbol {id}\cdot\boldsymbol \varphi\) 的前缀和 \(F\),再利用公式 \(s={\boldsymbol f+\boldsymbol \varepsilon\over 2}\) 即可求出 \(s\) 的前缀和 \(S={F+1\over 2}\)
已知前缀和后,利用前缀和的差分即可求出 \(s\)
而至于求解 \(\boldsymbol f\) 的前缀和 \(F\),这里提供用于杜教筛与 min_25 筛的思路:
杜教筛
再利用 \(\displaystyle \sum_{i=1}^ni={n(n+1)\over 2},\sum_{i=1}^ni^2={n(2n+1)(n+1)\over 6}\) 即可求解
min_25 筛