试题 算法训练 5-1最小公倍数
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
编写一函数lcm,求两个正整数的最小公倍数。
样例输入
一个满足题目要求的输入范例。
例:
3 5
样例输出
与上面的样例输入对应的输出。
例:
数据规模和约定
输入数据中每一个数的范围。
例:两个数都小于65536。
————————————
思路:最小公倍数=两数之积/最大公约数
#include<iostream>
using namespace std;
int rec(int m,int n)//求最大公约数
{
int r=m%n;
while(r)
{
m=n;n=r;r=m%n;
}
return n;
}
int lcm(int a,int b)//求最小公倍数
{
return a*b/rec(a,b);//最小公倍数=两数之积/最大公约数
}
int main()
{
int m,n;
cin>>m>>n;
int s;
s=lcm(m,n);
cout<<s<<endl;
return 0;
}