HDU-1108最小公倍数
最小公倍数
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 42369 Accepted Submission(s): 23621
Problem Description
2つの正の整数を与え、この2つの数の最小公倍数を計算します.
Input
1000以下の正の整数を2つ含む複数のテストデータを入力.
Output
各テスト・インスタンスについて、この2つの数の最小公倍数が与えられ、各インスタンスは1行出力される.
Sample Input
Sample Output
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 42369 Accepted Submission(s): 23621
Problem Description
2つの正の整数を与え、この2つの数の最小公倍数を計算します.
Input
1000以下の正の整数を2つ含む複数のテストデータを入力.
Output
各テスト・インスタンスについて、この2つの数の最小公倍数が与えられ、各インスタンスは1行出力される.
Sample Input
10 14
Sample Output
70
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<iostream>
#include<algorithm>
#include<string>
#include<queue>
#define M(i,n,m) for(int i = n;i < m;i ++)
#define L(i,n,m) for(int i = n;i >= 0;i --)
#define N(n,m) memset(n,m,sizeof(n));
const int MAX = 10010;
using namespace std;
int main()
{
int n,m,t,s;
while(~scanf("%d%d",&n,&m))
{
if(n < m)
{
t = n;
n = m;
m = t;
}
int p = n * m;
while(m)
{
s = n % m;
n = m;
m = s;
}
printf("%d
",p/n);
}
return 0;
}