扩展欧几里德算法
算法导论
代码:
#include <stdio.h>void extened_euclid(int a, int b, int* d, int* x, int* y){int dp, xp, yp;
if (b == 0)
{*d = a;*x = 1;*y = 0;}else
{extened_euclid(b, a%b, &dp, &xp, &yp);*d = dp;*x = yp;*y = xp- a/b*yp;}}int main()
{int d = 0, x = 0, y = 0;
extened_euclid(99, 78, &d, &x, &y);printf("%d %d %d ", d, x, y);getchar();
return 0;
}
![Creative Commons License](http://i.creativecommons.org/l/by/2.5/cn/88x31.png)
本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名小橋流水(包含链接)。如您有任何疑问或者授权方面的协商,请给我发邮件。