{ 依据gcd(a,b)=gcd(b,a mod b);
设ax1+by1=gcd(a,b)=1
则bx2+(a mod b)y2=gcd(b,a mod b);
ax1+by1=bx2+(a mod b)y2;
ax1+by1=bx2+(a-[a/b]*b)y2=ay2+bx2-(a/b)*by2;
根据恒等定理得:x1=y2; y1=x2-[a/b]*y2;
}
program pro;
var
a,b,x,y,k:longint;
function extended_gcd(a,b:longint; var x,y:longint):longint;
var
t:longint;
begin
if b=0 then
begin
x:=1; y:=0;
exit(a);
end;
extended_gcd:=extended_gcd(b,a mod b,x,y);
t:=x; x:=y; y:=t-(a div b)*y;
end;
begin
readln(a,b);
k:=extended_gcd(a,b,x,y);
writeln(a,'*(',x,')+',b,'*(',y,')=',k);
end.
欧几里得拓展定理
最新推荐文章于 2023-10-21 07:57:00 发布