题目链接
\(Description\)
求\[\sum_{i-1}^n\sum_{j=1}^nijgcd(i,j)\mod p\]
\(n<=10^{10}\)
\(Solution\)
\[\sum_{i-1}^n\sum_{j=1}^nijgcd(i,j)\]
\[=\sum_{d=1}^nd^3\sum_{i=1}^{n/d}\sum_{j=1}^{n/d}ij[gcd(i,j)==1]\]
发现跟这道题只差了一个\(d^3\)。最后化简得到
\[ans=\sum_{T=1}^n(\frac{\frac{n}{T}\times(\frac{n}{T}+1)}{2})^2\phi(T)T^2\]
令\(f(i)=\phi(i)i^2\)。
已知\(\phi*1=Id\),所以可以令\(g(i)=i^2\),这样\(f*g(x)=\sum_{d|x}\phi(d)d^2\frac{x^2}{d^2}=x^3\),\(f*g\)的前缀和就可以\(O(1)计算了\)。
#include
#include
#include