[华为OJ题解]求解最小公倍数

华为oj题解,给定两个数,求这两个数的最小公倍数。两个数的最小公倍数求法为两数的乘积除以两数的最大公约数,所以,本质上本题就是求解两个数的最大公约数问题。求解最大公约数直接使用辗转相除法进行求解即可。代码如下:

#include <iostream>  
#include <string>  

using namespace std;

int gcd(int a, int b)
{
	if (a < b)swap(a, b);

	while (b != 0)
	{
		int tmp = a % b;
		a = b;
		b = tmp;
	}
	return a;
}

int main()
{
	int a, b;

	cin >> a >> b;

	int t = gcd(a, b);
	cout << a / t * b << endl;
	return 0;
}

本文遵从CC3.0协议转载请注明:转自凌风技术站

本文标题:[华为OJ题解]求解最小公倍数

本文链接地址:http://www.iaccepted.net/algorithm/hwoj/123.html

相关文章



发表评论

电子邮件地址不会被公开。 必填项已用*标注