洛谷P3811 【模板】乘法逆元
题目描述
给定n,p求1~n中所有整数在模p意义下的乘法逆元。
输入输出格式
- 输入格式:
一行n,p - 输出格式:
n行,第i行表示i在模p意义下的逆元。
输入输出样例
- 输入样例1:
10 13 - 输出样例1:
1
7
9
10
8
11
2
5
3
4
说明
1 ≤\leq≤ n ≤\leq≤ 3 ×\times× 10610 ^ 6106, n < p < 20000528
输入保证 p 为质数。
逆元简介
乘法逆元,主要用于求ab\frac{a}{b}ba mod p 的值(p通常为质数),是解决模意义下分数数值的必要手段。
- 逆元定义
若a ∗*∗ x ≡\equiv≡ 1 (mod b),且a与b互质,那么我们就称: x 为 a 的逆元。
所以要求在mod p 意义下的 ab\frac{a}{b}ba,我们就可以求出 b 在 mod p 下的逆元,然后乘上 a,再 mod p,就是这个分数的值了。
a的逆元记作a−1a^{-1}a−1。
方法一:拓展欧几里得求单个逆元
此方法最为常用,尤其在p很大的情况下。同时只需a与p互质即可,并不需要p是质数。
由逆元的定义,我们要求a在模p意义下的乘法逆元,既要求b,使得