推导过程
求 ax+by=gcd(a,b)设已递归求得x′,y′满足: bx′+(a%b)y′=gcd(b,a%b)=ax+bybx′+(a−a/b∗b)y′=ax+bybx′+ay′−b(a/b)y′=ax+bya(y′−x)+b(x′−(a/b)y′−y)=0x=y′y=x′−(a/b)y′b=0 时,ax=a,取 x=1,y=0
模板
应用
解不定方程
ax+by=m
:
有解需满足
gcd(a,b)|m
。
a′=a/gcd(a,b),b′=b/gcd(a,b),m′=m/gcd(a,b)
现在我们要求
a′x+b′y=m′
。
先用
exgcd
解出
a′x+b′y=gcd(a′,b′)=1
的一组解
x′,y′
,
其他解都可表示为
x=x′+tb′,y=y′−ta′,t∈Z
将其都乘
m/gcd(a,b)
就是原方程的解。
求单个数的逆元:
aa−1≡1(modm)⇔aa−1−km=1
解模数不互质的线性方程组:
戳这里

本文详细介绍了扩展欧几里得算法的应用场景,包括求解线性不定方程、寻找模逆元以及解决模数不互质的线性方程组等问题。通过递归方式推导了该算法的基本原理,并给出了具体的解题步骤。
2129

被折叠的 条评论
为什么被折叠?



