【数论】逆元笔记

逆元

  1. 逆元定义:给定正整数 a , p a,p a,p,如果有 a x ≡ 1 ( m o d p ) ax\equiv1\pmod{p} ax1(modp),且 a a a p p p 互质,则称 x x x 的最小正整数解为 a a a p p p 的逆元。

证明:

Δ a ≡ Δ a ( m o d p ) \frac{\Delta}{a} \equiv \frac{\Delta}{a} \pmod{p} aΔaΔ(modp)

Δ a ≡ Δ ⋅ a − 1 ( m o d p ) \frac{\Delta}{a} \equiv \Delta \cdot a^{-1} \pmod{p} aΔΔa1(modp)

x = a − 1 x = a ^ {-1} x=a1

Δ a ≡ Δ ⋅ x ( m o d p ) \frac{\Delta}{a} \equiv \Delta \cdot x \pmod{p} aΔΔx(modp)

Δ ≡ Δ ⋅ x ⋅ a ( m o d p ) \Delta \equiv \Delta \cdot x \cdot a \pmod{p} ΔΔxa(modp)

1 ≡ a ⋅ x ( m o d p ) 1 \equiv a \cdot x \pmod{p} 1ax(modp)

1 ≡ a ⋅ a − 1 ( m o d p ) 1 \equiv a \cdot a ^ {-1}\pmod{p} 1aa1(modp)

a ⋅ a − 1 ≡ 1 ( m o d p ) a \cdot a ^ {-1} \equiv 1\pmod{p} aa11(modp)

a x ≡ 1 ( m o d p ) ax \equiv 1\pmod{p} ax1(modp)

得证。

  1. 裴蜀定理

a , b a,b a,b 为整数且 g c d ( a , b ) = d gcd(a,b) = d gcd(a,b)=d,那么对于任意整数 x , y x,y x,y a x + b y ax+by ax+by 都一定为 d d d 的倍数。特别的,一定存在 x , y x,y x,y 使得 a x + b y = d ax + by = d ax+by=d 成立。

  1. e x g c d exgcd exgcd

a   m o d   b = = a − a b ⋅ b a \bmod b == a - \frac{a}{b} \cdot b amodb==abab
b ⋅ x 1 + a   m o d   b ⋅ y 1 = d b \cdot x1 + a \bmod b \cdot y1 = d bx1+amodby1=d
b ⋅ x 1 + ( a − a b ⋅ b ) ⋅ y 1 = d b \cdot x1 + (a - \frac{a}{b} \cdot b) \cdot y1 = d bx1+(abab)y1=d
b ⋅ x 1 + a ⋅ y 1 − a b ⋅ b ⋅ y 1 = d b \cdot x1 + a \cdot y1 - \frac{a}{b} \cdot b \cdot y1 = d bx1+ay1baby1=d
a ⋅ y 1 + b ⋅ ( x 1 − a b ⋅ y 1 ) = d a \cdot y1 + b \cdot (x1 - \frac{a}{b} \cdot y1) = d ay1+b(x1bay1)=d

int exgcd(int a,int b,int &x,int &y) {
	if (b == 0) {
		x = 1,y = 0;
		return a;
	} else {
		int d,x1,y1;
		d = exgcd(b,a % b,x1,y1);
		/*
		a % b == a - (a / b) * b
		b * x1 + a % b * y1 = d
		b * x1 + [a - (a / b) * b] * y1 = d
		b * x1 + a * y1 - (a / b) * b * y1 = d
		a * y1 + b *(x1 - a / b * y1) = d 
		*/
		x = y1,y = x1 - a / b * y1; // a * y1 + b * (x1 - a / b * y1) = d
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值