对于两整数x,y,有x*y=最小公倍数*最大公约数(可以据此来求出其一之后直接得到其二的值)
求最大公约数的三种方法
1.辗转相除法
int gys(int x, int y)
{
int temp = y;
while(x%y!=0)
{
temp = x%y;
x = y;
y = temp;
}
return temp;
}
2.辗转相减法
int gys(int a,int b)
{
while(a != b)
{
if(a>b)
{
a = a - b;
}
else
{
b = b - a;
}
}
return a;
}
3.穷举法
int gys(int x,int y)
{
int temp = 0;
for(temp = x ; ; temp-- )
{
if(x%temp == 0 && y%temp==0)
break;
}
return temp;
}