题意
求\sum_{i=1}^n \sum_{j=1}^n lcm(i,j)∑ni=1∑nj=1lcm(i,j)
n \le 10^{10}n≤1010
题解
自己推到后面就不会了,然后去找题解……
大概就是
∑i=1n∑j=1nijgcd(i,j)=∑d=1n∑i=1⌊nd⌋∑j=1⌊nd⌋[gcd(i,j)=1]i∗j∗d2d
反演一下:
=∑d=1n∑i=1⌊nd⌋∑j=1⌊nd⌋i∗j∗d∑k|gcd(i,j)μ(k)=∑k=1n∑d=1n∑k|i⌊nd⌋∑k|j⌊nd⌋i∗j∗d∗μ(k)
=∑k=1n∑d=1n∑i=1⌊ndk⌋∑j=1⌊ndk⌋ik∗jk∗d∗μ(k)
设T=dk :
=∑T=1n∑d|T(Td)2∗d∗μ(Td)∑i=1⌊nT⌋∑j=1⌊nT⌋i∗j=∑T=1n((⌊nT⌋+1)∗⌊nT⌋2)2T∑d|Tμ(d)∗d
现在考虑如何求f(T)=T∑d|Tμ(d)∗d 的前缀和:
∑i=1nf(i)=∑i=1ni∑d|iμ(d)∗d=∑d=1n∑i=1⌊nd⌋μ(d)∗d∗i∗d=∑d=1nμ(d)∗d2∑i=1⌊nd⌋i=∑d=1n(1+⌊nd⌋)∗⌊nd⌋2μ(d)∗d2
在考虑求μ(d)∗d2 的前缀和:
杜教筛就好了,卷上id2,
S(n)=1−∑i=2ni2∗S(⌊ni⌋)

本文探讨了一个数论求和问题,目标是求解特定形式的数学表达式的总和。通过对原始表达式的转换和利用数论中的反演技巧,文章详细展示了如何将问题转化为易于计算的形式,并最终给出了一种高效的解决方案。
416

被折叠的 条评论
为什么被折叠?



