min_25 筛.
先枚举 $i$ ,答案就变成了
$$
ans=\sum_{i=1}^n \binom{\sigma_0(i)}{2}\\
=\frac {\sum_{i=1}^n \sigma_0^2(i)-\sum_{i=1}^n \sigma_0(i)} 2 \\
=\frac {\sum_{i=1}^n \sigma_0^2(i)-\sum_{i=1}^n \lfloor\frac{n}{i}\rfloor} 2
$$
后面那个 $\sum$ 可以直接整除分块 $O(\sqrt n)$ 求出.
对于前面那个 $\sum$ ,注意到 $\sigma_0^2(x)$ 也是积性函数,且当 $p$ 为质数时, $\sigma_0^2(p^k)=(k+1)^2$ ,容易计算.
于是可以考虑用 min_25 筛求出其前缀和,时间复杂度 $O(\frac{n^{\frac 3 4}}{\log n})$ .
1 | //%std |