莫反一些题
Posted 吃花椒的妙酱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了莫反一些题相关的知识,希望对你有一定的参考价值。
序列(牛客)
题目大意:求gcd(x,y)=1且
a
b
y
=
b
a
x
a_{b_y}=b_{a_x}
aby=bax的 有序对对数
思路:
所求 =
∑
x
=
1
n
∑
y
=
1
n
[
g
c
d
(
x
,
y
)
=
1
]
[
a
b
y
=
b
a
x
]
\\sum_{x=1}^n\\sum_{y=1}^n[gcd(x,y)=1] [a_{b_y}=b_{a_x}]
∑x=1n∑y=1n[gcd(x,y)=1][aby=bax]
设
f
(
d
)
=
∑
i
=
1
n
∑
j
=
1
n
[
g
c
d
(
x
,
y
)
=
d
]
[
a
b
y
=
b
a
x
]
f(d) = \\sum_{i=1}^{n}\\sum_{j=1}^n[gcd(x,y)=d][a_{b_y}=b_{a_x}]
f(d)=∑i=1n∑j=1n[gcd(x,y)=d][aby=bax]
将f(d)求倍数和,有
g
(
d
)
=
∑
d
∣
d
’
f
(
d
’
)
=
∑
d
∣
x
,
d
∣
y
[
a
b
x
=
b
a
y
]
g(d) = \\sum_{d|d’}f(d’)= \\sum_{d|x,d|y} [a_{b_x}= b_{a_y}]
g(d)=∑d∣d’f(d’)=∑d∣x,d∣y[abx=bay]
反演得
f
(
d
)
=
∑
d
∣
d
’
μ
(
d
’
d
)
g
(
d
’
)
f(d) = \\sum_{d|d’}\\mu(\\frac{d’}{d})g(d’)
f(d)=∑d∣d’μ(dd’)g(d’)
所求为
f
(
1
)
=
∑
d
=
1
N
μ
(
d
)
g
(
d
)
,
其
中
N
=
m
a
x
(
a
i
)
f(1) = \\sum_{d=1}^{N}\\mu(d)g(d),其中N = max(a_i)
f(1)=∑d=1Nμ(d)g(d),其中N=max(ai)
对于所有的g(d)我们可以nlogn处理——枚举d,然后再枚举d的倍数
最后求和
LCMs
题目大意:给定数组a,求
∑
i
=
0
n
−
2
∑
j
=
i
+
1
n
−
1
l
c
m
(
a
i
,
a
j
)
\\sum_{i=0}^{n-2}\\sum_{j=i+1}^{n-1}lcm(a_i,a_j)
∑i=0n−2∑j=i+1n−1lcm(ai,aj)mod998244353
思路:
原来的柿子不好求,不是任意有序对,我们转化为任意的有序对
∑
i
=
0
n
−
1
∑
j
=
0
n
−
1
l
c
m
(
a
i
,
a
j
)
=
2
∗
a
n
s
+
∑
i
=
0
n
−
1
a
i
\\sum_{i=0}^{n-1}\\sum_{j=0}^{n-1}lcm(a_i,a_j)=2*ans + \\sum_{i=0}^{n-1}a_i
∑i=0n−1∑j=0n−1lcm(ai,aj)=2∗ans+∑i=0n−1ai
上柿继续化简,把lcm去掉
上式 =
∑
i
=
0
n
−
1
∑
j
=
0
n
−
1
a
i
∗
a
j
∗
(
1
g
c
d
(
a
i
,
a
j
)
)
\\sum_{i=0}^{n-1}\\sum_{j=0}^{n-1}ai*aj*(\\frac{1}{gcd(a_i,a_j)})
∑i=0n−1∑j=0n−1ai∗aj∗(gcd(ai,aj)1)
枚举gcd
上柿 =
∑
d
=
1
N
1
d
∑
i
=
0
n
−
1
∑
j
=
0
n
−
1
a
i
∗
a
j
∗
[
g
c
d
(
a
i
,
a
j
)
=
d
]
)
\\sum_{d=1}^{N} \\frac{1}{d} \\sum_{i=0}^{n-1}\\sum_{j=0}^{n-1}ai*aj*[gcd(a_i,a_j)=d])
∑d=1Nd1∑i=0n−1∑j=0n−1ai∗aj∗[gcd(ai,aj)=d])
设
f
(
d
)
=
∑
i
=
0
n
−
1
∑
j
=
0
n
−
1
a
i
∗
a
j
∗
[
g
c
d
(
a
i
,
a
j
)
=
d
]
)
f(d) = \\sum_{i=0}^{n-1}\\sum_{j=0}^{n-1}ai*aj*[gcd(a_i,a_j)=d])
f(d)=∑i=0P1829 JZPTAB(莫反)
P3327 [SDOI2015]约数个数和(莫反&整除分块)