最小公倍数 = 两数乘积 / 最大公约数
#include<iostream>
using namespace std;
int gcd(int a, int b){
do{
int c = a%b;
a = b;
b = c;
}while(b);
return a;
}
int lcm(int a, int b){
return a*b / gcd(a, b);
}
int main(){
int a, b;
cin>>a>>b;
if(a>b){
cout << lcm(a, b);
}else{
cout << lcm(b, a);
}
return 0;
}
$$直接暴力AC$$
最后main函数里的if(a >b)这个不用判断的,因为gcd对于传入参数的大小顺序没有影响
对!昨天我也加了if条件 现在明白a<b时a%b之后的操作相当于自动交换ab的值
$$好像这样也可以$$
暴力枚举也可以
递归还是递推
递推吧
递推