一些与gcd有关的前缀和公式
给定n求小于等于n且与n互素的数之和
∑ d = 1 n d [ g c d ( d , n ) = 1 ] \sum_{d=1}^nd[gcd(d,n)=1] d=1∑nd[gcd(d,n)=1]
这个问题可以通过高斯求 ∑ i = 1 n i \sum_{i=1}^ni ∑i=1ni的方式来求解
可以发现,当
n
≥
2
n\ge2
n≥2时,有
g
c
d
(
d
,
n
)
=
1
gcd(d,n)=1
gcd(d,n)=1则必然有
g
c
d
(
n
−
d
,
n
)
=
1
gcd(n-d,n)=1
gcd(n−d,n)=1而,n内共有
φ
(
n
)
\varphi(n)
φ(n)个与其互素的数字,因此当
n
≥
2
n\ge2
n≥2时,就有
(1)
∑
d
=
1
n
d
[
g
c
d
(
d
,
n
)
=
1
]
=
n
φ
(
n
)
2
\sum_{d=1}^nd[gcd(d,n)=1]=\frac{n\varphi(n)}{2}\tag{1}
d=1∑nd[gcd(d,n)=1]=2nφ(n)(1)
求小于等于n所有互素的数对的乘积和
∑ i = 1 n ∑ j = 1 n j ⋅ i [ g c d ( i , j ) = 1 ] \sum_{i=1}^n\sum_{j=1}^nj\cdot i[gcd(i,j)=1] i=1∑nj=1∑nj⋅i[gcd(i,j)=1]
可以对原本的区间进行拆分
[
1
≤
i
≤
n
]
[
1
≤
j
≤
n
]
=
[
1
≤
i
≤
n
]
[
1
≤
j
<
i
]
+
[
1
≤
i
<
j
]
[
1
≤
j
≤
n
]
+
[
i
=
j
]
[
1
≤
i
≤
n
]
[1\le i\le n][1\le j\le n]=[1\le i\le n][1\le j< i]+[1\le i<j][1\le j\le n]+[i=j][1\le i\le n]
[1≤i≤n][1≤j≤n]=[1≤i≤n][1≤j<i]+[1≤i<j][1≤j≤n]+[i=j][1≤i≤n]
对第一部分求和
∑
i
=
1
n
i
∑
j
=
1
i
−
1
j
[
g
c
d
(
i
,
j
)
]
\sum_{i=1}^ni\sum_{j=1}^{i-1}j [gcd(i,j)]
i=1∑nij=1∑i−1j[gcd(i,j)]
根据公式KaTeX parse error: \tag works only in display equations就有
∑
i
=
1
n
i
[
i
=
1
]
+
i
2
φ
(
i
)
2
\sum_{i=1}^n\frac{i[i=1]+i^2\varphi(i)}{2}
i=1∑n2i[i=1]+i2φ(i)
而区间的第二部分和第一部分实质上是一样的,那么前面两部分就是
∑
i
=
1
n
i
[
i
=
1
]
+
i
2
φ
(
i
)
\sum_{i=1}^ni[i=1]+i^2\varphi(i)
∑i=1ni[i=1]+i2φ(i)而第三部分除了
i
=
j
=
1
i=j=1
i=j=1的情况以外,其总为0,而当其为1时答案恰好为1,故最终的答案就是
∑
i
=
1
n
∑
j
=
1
n
j
⋅
i
[
g
c
d
(
i
,
j
)
=
1
]
=
∑
i
=
1
n
i
2
φ
(
i
)
\sum_{i=1}^n\sum_{j=1}^nj\cdot i[gcd(i,j)=1]=\sum_{i=1}^ni^2\varphi(i)
i=1∑nj=1∑nj⋅i[gcd(i,j)=1]=i=1∑ni2φ(i)
而对于
i
d
2
⋅
φ
id^2\cdot \varphi
id2⋅φ这个函数可以通过与
i
d
2
id^2
id2卷积
(
i
d
2
⋅
φ
)
∗
(
i
d
2
)
=
∑
d
∣
n
d
2
φ
(
d
)
n
2
d
2
=
n
2
∑
d
∣
n
φ
(
d
)
=
n
3
(id^2\cdot\varphi)*(id^2)=\sum_{d|n}d^2\varphi(d)\frac{n^2}{d^2}=n^2\sum_{d|n}\varphi(d)=n^3
(id2⋅φ)∗(id2)=d∣n∑d2φ(d)d2n2=n2d∣n∑φ(d)=n3
其中
n
3
n^3
n3和
n
2
n^2
n2都有公式可以
O
(
1
)
O(1)
O(1)求出,因此可以很方便地应用杜教筛求解