题目描述:
小乐乐最近在课上学习了如何求两个正整数的最大公约数与最小公倍数,但是他竟然不会求两个正整数的最大公约数与最小公倍数之和,请你帮助他解决这个问题。
输入描述:
每组输入包含两个正整数n和m。(1 ≤ n ≤ 109,1 ≤ m ≤ 109)
输出描述:
对于每组输入,输出一个正整数,为n和m的最大公约数与最小公倍数之和。
示例1
输入
10 20
输出
30
示例2
输入
15 20
输出
65
解题思路:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
long n=in.nextInt();
long m=in.nextInt();
long yue=f_yue(n,m);
long bei=yue*(n/yue)*(m/yue);
System.out.println(yue+bei);
}
//求最小公约数的函数!!
public static long f_yue(long x,long y){
while(x!=0){
long temp = y%x;
y = x;
x = temp;
}
return y;
}
}