CHambist 2013-10-06 03:02:00
点我顶贴
收藏
删除
program gys;
var x0,y0,n,m,p,q,i,j,k,sum,a,b:longint;
begin
read(x0,y0);
if x0=y0 then
begin
writeln('1');
exit;
end;
if x0>y0 then
begin
writeln('0');
exit;
end;
p:=x0*y0;
q:=round(sqrt(p));
for i:=x0 to q do
if p mod i=0 then
begin
if i=p div i then
begin
inc(sum);
break;
end;
if i>p div i then
begin
a:=i;
b:=p div i;
end;
if i<p div i then
begin
a:=p div i;
b:=i;
end;
while a mod b<>0 do
begin
k:=b;
b:=a mod b;
a:=k;
end;
if b=x0 then sum:=sum+2;
end;
writeln(sum);
end.