最小公倍数=两数乘积/最大公约数(相减法、辗转相除法)
晨跑
http://www.nowcoder.com/questionTerminal/cf2e7025bf3e44eea0cd50ef9ac75e93
#include<iostream>
using namespace std;
/*最小公倍数=两数乘积 / 最大公约数*/
long beishu(long a, long b){
long m=a*b;/*两数乘积*/
/*最大公约数--相减法*/
// while(a<b || a>b){
// if(a<b)b=b-a;
// if(a>b)a=a-b;
// }
/*最大公约数--辗转相除法*/
if(b>a) swap(a,b);
long c=a%b;
while(c!=0){
a=b;
b=c;
c=a%b;
}
return m/b;
}
int main(){
long a,b,c;
cin>>a>>b>>c;
long p=beishu(a,b);
long q=beishu(p,c);
cout<<q<<endl;
return 0;
}