线性同余方程
目录
线性同余方程
对于同余式 \(ax\equiv b(\mod m)\)
我们可以得知 \(m\mid (ax-b)\)
因此,设 \(ax-b=-my\)
从而得到 \(ax+my=b\)
由裴属定理,显然,方程有解的条件为 \(gcd(a,m)\mid b\)
若满足上述条件,且 \(ax'+my'=gcd(a,m)\)
则显然, \(a({b\over gcd(a,m)}x')+m({b\over gcd(a,m)}y')=b\)
我们记 \(x_0={b\over gcd(a,m)}x',y={b\over gcd(a,m)}y'\)
则 \(ax_0+my_0=b\) 为该线性同余方程的一组解
而考虑 \(a(x_0-mz_0)+m(y_0+az_0)=ax_0-amz_0+my_0+amz_0=ax_0+my_0=b,z_0\in Z\)
可发现,实际上,线性同余方程具有多组解:
\(\begin{cases} x=x_0-mz_0 \\\ \\ y=y_0+az_0 \\\ \\ z_0\in Z \end{cases}\)
线性同余方程的正数解
求出 \(x_0,y_0\) 后
\(x\) 取最小正整数时,若 \(y\) 仍娶不到正整数,则无解;否则就已经是满足了的一组解
令 \(x=x_0-\lfloor{x_0\over m}\rfloor\cdot m\) 则可保证 \(x\) 为满足条件的最小正数
故取 \(z_0=\lfloor{x_0\over m}\rfloor\)
因此 \(y=y_0+\lfloor{x_0\over m}\rfloor\cdot a\)
即可进行判断