方法1:直接计算(常用,即辗转相除法)
int gcd(int a,int b){
if(b==0)return a;
return gcd(b,a%b);
}
方法2:使用 < n u m e r i c > <numeric> <numeric>库,自带 g c d gcd gcd(最大公约数)和 l c m lcm lcm(最小公倍数),(万能头有这个库)
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,gd,lm;
cin>>a>>b;
gd=gcd(a,b);
lm=lcm(a,b);
cout<<gd<<" "<<lm;
return 0;
}