题意
给定 n , p , n,p, n,p, 求 1 ∼ n 1∼n 1∼n中所有整数在模 pp 意义下的乘法逆元。 ( p 为 质 数 ) (p为质数) (p为质数)
题解
根据费马小定理,我们要一个一个求
e
x
g
c
d
exgcd
exgcd,显然太慢了
我们假设
p
=
k
×
i
+
r
p=k\times i+r
p=k×i+r,那么有
p
(
m
o
d
i
)
=
r
p(modi)=r
p(modi)=r且有
k
×
i
+
r
≡
0
(
m
o
d
p
)
k\times i+r\equiv 0(mod\ p)
k×i+r≡0(mod p)同时乘上
i
−
1
,
r
−
1
i^{-1},r^{-1}
i−1,r−1得到
k
×
r
−
1
+
i
−
1
≡
0
(
m
o
d
p
)
k\times r^{-1}+i^{-1}\equiv 0(mod\ p)
k×r−1+i−1≡0(mod p)
整理得
−
k
×
r
−
1
≡
i
−
1
(
m
o
d
p
)
-k\times r^{-1}\equiv i^{-1}(mod\ p)
−k×r−1≡i−1(mod p)
(
p
(
m
o
d
i
)
)
−
1
=
r
−
1
(p(mod\ i))^{-1}=r^{-1}
(p(mod i))−1=r−1
k
=
⌊
p
i
⌋
k=\lfloor \frac{p}{i}\rfloor
k=⌊ip⌋
于是得到一个递推关系
−
⌊
p
i
⌋
×
(
p
(
m
o
d
i
)
)
−
1
≡
i
−
1
(
m
o
d
p
)
-\lfloor \frac{p}{i}\rfloor\times (p(mod\ i))^{-1}\equiv i^{-1}(mod\ p)
−⌊ip⌋×(p(mod i))−1≡i−1(mod p)
inv[i]=inv[p%i]*(p-p/i)%p;