#42. [模板] 模意义下的乘法逆元

[模板] 模意义下的乘法逆元

题目背景

快读

int read()
{
	int s = 0, f = 1;
	char ch = getchar();
	while (ch < '0' || ch > '9')
	{
		if (ch == '-') f = -1;
		ch = getchar();
	}
	while (ch >= '0' && ch <= '9')
	{
		s = s * 10 + ch - '0';
		ch = getchar();
	}
	return s * f;
}

// 输入时写 int n = read(); 这样子

题目描述

给定正整数 n,pn,p,求 [1,n][1,n] 中所有整数在模 pp 意义下的乘法逆元。

aapp 的乘法逆元定义为 ax1(modp)ax\equiv1\pmod p 的解。

输入格式

一行两个正整数 n,pn,p

输出格式

输出 nn 行,其中第 ii 行表示 ii 在模 pp 下的乘法逆元。

10 13
1
7
9
10
8
11
2
5
3
4

提示

所有数据满足 1n3×106 1 \leq n \leq 3 \times 10 ^ 6n<p<20000528n < p < 20000528

输入保证 p p 为质数。