5
社区成员
发帖
与我相关
我的任务
分享
给定两个正整数,计算这两个数的最小公倍数.
输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数.
对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行.
10 14
70
思路:
使用gcd和唯一分解定理求lcm。
代码:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll gcd(int x,int y){
return y==0?x:gcd(y,x%y);
}
ll lcm(int a,int b){
//return (a*b)/gcd(a,b);
ll res=a/gcd(a,b);
return res*b;
}
int main(){
ll n,a,b;
cin>>n;
while(n--){
cin>>a>>b;
cout<<lcm(a,b)<<endl;
}
return 0;
}
输出:
