洛谷 P1390 公约数的和

题目链接

题目简述

\[\sum_{i=1}^n\sum_{j=i+1}^n\gcd(i,j) \]

推导过程

\[\begin{align*} &\sum_{i=1}^n\sum_{j=i+1}^n\gcd(i,j) \\ =\space&\frac{1}{2}\cdot\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)-\sum_{i=1}^n\gcd(i,i) \\ =\space&\frac{1}{2}\left(\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)-\sum_{i=1}^ni\right) \\ =\space&\frac{1}{2}\cdot\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)-\frac{n(n+1)}{4} \end{align*} \]

\[\begin{align*} &\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j) \\ =&\sum\limits_{i=1}^n\sum\limits_{j=1}^n\sum\limits_{d=1}^n\bigl[\gcd(i,j)=d\bigr]\cdot d \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{i=1}^n\sum\limits_{j=1}^n\bigl[\gcd(i,j)=d\bigr] \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{i=1}^{\lfloor n/d\rfloor}\sum\limits_{j=1}^{\lfloor n/d\rfloor}\bigl[\gcd(di,dj)=d\bigr] \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{i=1}^{\lfloor n/d\rfloor}\sum\limits_{j=1}^{\lfloor n/d\rfloor}[\gcd(i,j)=1] \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{i=1}^{\lfloor n/d\rfloor}\sum\limits_{j=1}^{\lfloor n/d\rfloor}\sum\limits_{x|i,\,x|j}\mu(x) \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{x=1}^{\lfloor n/d\rfloor}\sum\limits_{i=1}^{\lfloor\frac{n}{dx}\rfloor}\sum\limits_{j=1}^{\lfloor\frac{n}{dx}\rfloor}\mu(x) \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{x=1}^{\lfloor n/d\rfloor}\left(\mu(x)\cdot\sum\limits_{i=1}^{\lfloor\frac{n}{dx}\rfloor}\sum\limits_{j=1}^{\lfloor\frac{n}{dx}\rfloor}1\right) \\ =&\sum\limits_{d=1}^nd\cdot\sum\limits_{x=1}^{\lfloor n/d\rfloor}\left(\mu(x)\cdot\left\lfloor\frac{n}{dx}\right\rfloor^2\right) \end{align*} \]

\(T=dx\),则 \(x=\frac{T}{d}\)

\[\begin{align*} &\sum\limits_{d=1}^nd\cdot\sum\limits_{x=1}^{\lfloor n/d\rfloor}\left(\mu(x)\cdot\left(\left\lfloor\frac{n}{dx}\right\rfloor\right)^2\right) \\ =&\sum\limits_{T=1}^n\sum\limits_{d|T}d\cdot\mu\!\left(\frac{T}{d}\right)\cdot\left\lfloor\frac{n}{T}\right\rfloor^2 \\ =&\sum\limits_{T=1}^n\left\lfloor\frac{n}{T}\right\rfloor^2\cdot\left(\sum_{d|T}d\cdot\mu\!\left(\frac{T}{d}\right)\right) \end{align*} \]

\[f(T)=\sum_{d|T}d\cdot\mu\!\left(\frac{T}{d}\right) \]

则根据 \(\text{Dirichlet}\) 卷积的定义,\(f=\text{id}*\mu=\varphi\).

\[\begin{align*} &\sum\limits_{T=1}^n\left\lfloor\frac{n}{T}\right\rfloor^2\cdot\left(\sum_{d|T}d\cdot\mu\!\left(\frac{T}{d}\right)\right) \\ =&\sum\limits_{T=1}^n\left\lfloor\frac{n}{T}\right\rfloor^2\cdot\varphi(T) \end{align*} \]

\[\begin{align*} &\sum_{i=1}^n\sum_{j=i+1}^n\gcd(i,j) \\ =\space&\frac{1}{2}\cdot\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)-\frac{n(n+1)}{4} \\ =\space&\frac{1}{2}\left(\sum\limits_{T=1}^n\left\lfloor\frac{n}{T}\right\rfloor^2\cdot\varphi(T)\right)-\frac{n(n+1)}{4} \end{align*} \]

用欧拉筛线性计算出 \(\varphi\) 即可. 注意到 \(\frac{n}{T}\) 最多只有 \(\sqrt{n}\) 种取值,因此使用整除分块的技巧可以把单次询问优化为 \(O(\sqrt{n})\). 此题为单测,直接计算即可. 有一个细节是,虽然整个式子一定是整数,但是左右两个部分不一定都是整数,代码实现中可以把 \(\frac{1}{2}\) 提出来.

posted on 2026-07-12 22:46  吴一鸣  阅读(0)  评论(0)    收藏  举报

导航