题目大意:
求
[sumlimits_{i=1}^{n}sumlimits_{j=1}^{m}gcd(i,j)^k
]
首先很套路地推出
[ret=sumlimits_{T=1}^{n}lfloorfrac{n}{T}
floorlfloorfrac{m}{T}
floorsumlimits_{t|T}t^kmu(frac{T}{t})
]
然后我们发现,前面直接除法分块就好了,关键是后面怎么办
我们设
[f(T)=sumlimits_{t|T}t^kmu(frac{T}{t})
]
很容易发现,它是一个积性函数可以线性筛,关键在于处理(prime|i)的情况
考虑莫比乌斯函数性质:对于(T)的某个质因子(p)的最高次(p^x),有贡献的部分其实只有当(t=p^x)和(t=p^{x-1})时,因为其他情况下(mu)的值都为(0)
所以质因子(p)对答案的贡献是((p^{kx}-p^{k*(x-1)})*others)
提出(p^{k*(x-1)})得到((p^k-1)*p^{k*(x-1)}*others)
类比推出对于(p)最高次为(p^{x-1})的某个数字,其贡献为((p^k-1)*p^{k*(x-2)}*others)
所以得出:当(prime|i)时,(f(i*prime)=f(i)*prime^k)
然后就可以线性筛预处理,除法分块回答啦(・∀・)