今天做模拟赛由于不会杜教筛导致70分。。。
于是去学了一下
μ
求 M(n)=∑ni=1μ(i)
μ 有性质: ∑d|nμ(d)=[n=1]
于是有式子:
1=∑i=1n[i=1]=∑i=1n∑d|iμ(d)=∑t=1n∑d=1[nt]μ(d)=∑i=1nM([ni])
转换一下得到:
M(n)=1−∑i=2nM([ni])
然后M(n)里n的取值只有根号种,可以递归或者递推算
ϕ
求 S(n)=∑ni=1ϕ(i)
ϕ 有性质: ∑d|nϕ(d)=n
(因为相当于枚举gcd,然后 ϕ(d) 就是n以内的数跟n的gcd为d的个数)
于是有:
12×n×(n+1)=∑i=1ni=∑i=1n∑d|nϕ(d)=∑t=1n∑d=1[nt]ϕ(d)=∑i=1nS([ni])
转化一下得到:
S(n)=12×n×(n+1)−∑i=2nS([ni])
也可以直接算