题目链接点这儿
对于普通的求解 的,我们可以利用扩展欧几里得求得两数c和d满足,若b是gcd(a,p)的倍数,那么有解,否则无解。
而对于多元的,我们知道对任意a, b来说ax+by永远是gcd(x,y)的倍数,所以我们可以用k*gcd(x,y)代替ax+by,然后对任意的k和z来说k*gcd(x,y) + cz又永远是gcd(gcd(x,y), z)
题目链接点这儿
对于普通的求解 的,我们可以利用扩展欧几里得求得两数c和d满足,若b是gcd(a,p)的倍数,那么有解,否则无解。
而对于多元的,我们知道对任意a, b来说ax+by永远是gcd(x,y)的倍数,所以我们可以用k*gcd(x,y)代替ax+by,然后对任意的k和z来说k*gcd(x,y) + cz又永远是gcd(gcd(x,y), z)