P6156 简单题 题解

P6156 简单题 题解

题目大意

题目传送门

给定 \(n,k\),求 \(\sum_{i=1}^n\sum_{j=1}^n(i+j)^k\gcd(i,j)\mu^2(\gcd(i,j))\)

\(1\leq n\leq5\times10^6\)

题目分析

先推导一波式子:

\[\begin{aligned} ans&=\sum_{i=1}^n\sum_{j=1}^n(i+j)^k\gcd(i,j)\mu^2(\gcd(i,j))\\ &=\sum_{t=1}^nt^{k+1}\mu^2(t)\sum_{i=1}^n\sum_{j=1}^n(i+j)^k[\gcd(i,j)=t]\\ &=\sum_{t=1}^nt^{k+1}\mu^2(t)\sum_{i=1}^{\lfloor\frac{n}{t}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{t}\rfloor}(i+j)^k\sum_{d|i,d|j}\mu(d)\\ &=\sum_{t=1}^nt^{k+1}\mu^2(t)\sum_{d=1}^{\lfloor\frac{n}{t}\rfloor}d^k\mu(d)\sum_{i=1}^{\lfloor\frac{n}{td}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{td}\rfloor}(i+j)^k\\ \end{aligned} \]

\(S(n)=\sum_{i=1}^n\sum_{j=1}^n(i+j)^k\)

\[ans=\sum_{t=1}^n\sum_{d=1}^nt^{k+1}d^k\mu^2(t)\mu(d)S(\lfloor\frac{n}{td}\rfloor) \]

\(T=td\)

\[ans=\sum_{T=1}^nT^kS(\lfloor\frac{n}{T}\rfloor)\sum_{d|T}d\mu^2(d)\mu(\frac{T}d) \]

  1. 先考虑快速求出 \(S(n)\)

    \(F(n)=\sum_{i=1}^ni^k,G(n)=\sum_{i=1}^nF(i)\)

    则有 \(S(n)=\sum_{i=n+1}^{2n}F(i)-\sum_{i=1}^nF(i)=G(2n)-2G(n)\)

    \(F(n)\) 可以用欧拉筛筛出来。

  2. 在考虑 \(f(n)=\sum_{d|n}d\mu^2(d)\mu(\frac{T}d)\)

    显然 \(f(n)\) 也是积性函数。

    \(\mu\) 函数考虑,讨论 \(p\)\(n\) 中的最高次幂,既有 \(p^k|x\and p^{k+1}\not\mid x\)

    因为有 \(f(n)=f(p^k)\times f(\frac{n}{p^k})\),所以讨论 \(f(p^k)\) 的取值:

    • \(k=0\),则 \(f(1)=1\)
    • \(k=1\),则 \(f(p)=1\mu^2(1)\mu(p)+p\mu^2(p)\mu(1)=p-1\)
    • \(k=2\),则 \(f(p^2)=1\mu^2(1)\mu(p^2)+p\mu^2(p)\mu(p)+p^2\mu^2(p^2)\mu(1)=-p\)
    • \(k\geq3\),根据鸽巢定理,此时 \(\mu(d)=0\or \mu(\frac{n}d)=0\),则 \(f(p^k)=0\)

    于是可以计算出 \(f(n)\)

posted @ 2024-06-01 15:25  LIUIR  阅读(3)  评论(0编辑  收藏  举报