HDU 1108 最小公倍数

来源:互联网 发布:今日金十数据官网新闻 编辑:程序博客网 时间:2024/05/22 12:24

最小公倍数

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 26421    Accepted Submission(s): 14532


Problem Description

 

给定两个正整数,计算这两个数的最小公倍数。
 


 

Input

 

输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数.
 


 

Output

 

对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。
 


 

Sample Input

 

10 14
 


 

Sample Output

 

70
 


要求的是最小公倍数,可以用辗转相除法求出最大公约数,然后用两个数的乘积除以最大公约数便到所求。

我的代码如下:

 

#include<iostream>
using namespace std;

int main(void)
{
    int a,b;
    int n;
    while(cin>>a>>b)
    {
        int m,k;
        m=a,k=b;
        if(a>b)
        {
            int temp;
            temp=a;
            a=b;
            b=temp;
        }
        n=a%b;
        while(n!=0)
        {
            a=b;
            b=n;
            n=a%b;
        }
        cout<<(k*m)/b<<endl;
    }
    return 0;
}

原创粉丝点击