两仪剑法是武当派武功的高级功夫,且必须 2 2 2 个人配合使用威力才大。同时该剑法招数变化太快、太多。设武当弟子甲招数变化周期为 n n n,武当弟子乙招数变化周期为 m m m,两弟子同时使用该剑法,当 2 2 2 人恰好同时达到招数变化周期结束时,威力最大,此时能将邪教妖人置于死地。
请你计算威力最大时,每人用了多少招?
输入格式
首先输入一个 t ( t < 100000 ) t(t < 100000) t(t<100000) 表示测试组数。
接下来 t t t 组输入,每组输入 2 2 2 个数 n , m ( 1 ≤ n , m ≤ 1000000000 ) n,m(1 \le n,m \le 1000000000) n,m(1≤n,m≤1000000000)。
输出格式
对于每组输出,输出用了多少招数。
样例输入
3
2 3
8 9
4 8
样例输出
6
72
8
解:
辗转相除法计算出最大公约数,在由a*b/最大公约数,来求出最小公倍数。
代码:
#include"iostream"
using namespace std;
long long gcd(long long a,long long b){
if(b==0)
return a;
return gcd(b,a%b);
}
int main()
{
int t;
long long a,b;
cin>>t;
for(int i=0;i<t;i++){
cin>>a>>b;
cout<<a*b/gcd(a,b)<<endl;
}
return 0;
}