GCD SUM
这道题目属于是大杂烩了
法一:考虑贡献,看这篇题解
从这篇题解我们可以知道,一般有两种枚举方法,对于\(gcd(x,y)\),我们既可以先枚举\(y\),然后再枚举\(y\)的约数\(p\),将约数除进去再利用φ,也可以先枚举\(p\),然后考虑\(\frac{y}{p}\)的值,再利用φ,感觉后面一种方法的效率要高一些
法二:公约数一定是最大公约数的倍数(gcd容斥),看这篇题解
\(g[k]\)的公式记住,因为我们要求解\(f[k]\),所以我们可以通过\(g[k]\)去求解\(f[k]\)
与“Small GCD”这道题目不同,这里没有枚举\(i\),而是直接去将\(i,j\)作为一个整体计算
法三:欧拉反演,看这篇题解
一定要知道,最后不要只化成
\[\sum_{i=1}^{n}\sum_{d|i}φ(d)\lfloor\frac{n}{d}\rfloor
\]
这一个式子仍然可以先固定\(d\),然后继续化简为
\[\sum_{d=1}^{n}φ(d)(\lfloor\frac{n}{d}\rfloor)^2
\]