题目描述
已知:
8>><
>>:
y1 = k x1
y2 = k x2
z = minfy1y2
k2 g
y1; y2; k; x1; x2 2 Z+
给定y1; y2 求z
输入
多组输入,每行输入两个数字:y1; y2,请求到文件结束(EOF)
0 < y1; y2 < 231
输出
每行输出一个整数z ,最后一组输出数据末尾没有换行符
输入样例
3 2
3 5
2 7
输出样例
6
15
14
#include<cstdio> //求最大公约数/最小公倍数
long gcd(long a,long b)
{
return b?gcd(b,a%b):a;
}
int main()
{
long a,b;
while(scanf("%ld %ld",&a,&b)!=EOF)
{
printf("%lld\n",1LL*a*b/(gcd(a,b)*gcd(a,b))); //1LL强制转换成long long 型
}
return 0;
}