题目:
最小公倍数 |
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) |
Total Submission(s): 3609 Accepted Submission(s): 2596 |
Problem Description 给定两个正整数,计算这两个数的最小公倍数。 |
Input 输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数. |
Output 对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。 |
Sample Input 10 14 |
Sample Output 70 |
Source POJ |
Recommend Eddy |
题目分析:
简单题。两个数的最小公倍数等于两个数的乘积/两个数的最大公约数。
举例:12和8的最大公约数为4
12×8/4=24
两数的最小公倍数是24
代码如下:
/* * a.cpp * * Created on: 2015年1月30日 * Author: Administrator */ #include <iostream> #include <cstdio> using namespace std; /** * 求最大公约数 */ int gcd(int a,int b){ int temp; while(b != 0){ temp = b; b = a%b; a = temp; } return a; } /** * 求最小公倍数 */ int lcm(int a,int b){ return a*b/gcd(a,b);//a与b的最小公倍数等于a与b的乘积/a与b的最大公约数 } int main(){ int a,b; while(scanf("%d%d",&a,&b)!=EOF){ printf("%d\n",lcm(a,b)); } return 0; }
时间: 2024-10-11 17:48:17