一道题
求:$\sum_{i=1}^{n}\sum_{d|i}(d,\frac{i}{d})$.
重要套路:$(a,b)=d,ab\leqslant n$ 求这个(a,b)的个数,又要保证后面的限制,可以这样缩:符合要求的$(a,b)$一定有$x,y$使得$(x,y)=1,xd*yd<=n$,因此$xy<=\frac{n}{d^2}$。
$\sum_{i=1}^{n}\sum_{d|i}(d,\frac{i}{d})$
$=\sum_{d}d\sum _{a}\sum _{b}((a,b)=d),ab<=n$
$=\sum_{d}d\sum_{x}\sum_{y}I ((x,y)),xy<=\frac{n}{d^2}$
$=\sum_{d}d \sum_{i=1}^{\frac{n}{d^2}}\sum_{d'|i}I ((d',\frac{i}{d'}))$
$=\sum_{d}d \sum_{i=1}^{\frac{n}{d^2}}\sum_{d'|i}\sum_{t|d'\wedge t|\frac{i}{d'}}\mu(t)$
$=\sum_{d}d\sum_{t}\mu(t)\sum_{a}\sum_{b}(a*b\leq \frac{n}{d^2},t|a,t|b)$
$=\sum_{d}d\sum_{t}\mu(t)\sum_{i=1}^{\frac{n}{d^2t^2}}d(i)$
闪一句,$d(i)$表示$i$的因数个数。
$=\sum_{w=1}^{n}\varphi (w)\sum_{i=1}^{\frac{n}{w^2}}d(i)$
前面那部分phi只用枚举到根号即可。而后面的d(i)有
$\sum_{i=1}^{n}d(i)=\sum_{i=1}^{n}\left \lfloor \frac{n}{i} \right \rfloor$
闪一句,这里考虑每个数作为几个数的因数即可。
然后就可以根号套根号,复杂度大概是$\sqrt{n}lnn$。