求最小公倍数
链接: https://www.nowcoder.com/practice/22948c2cad484e0291350abad86136c3?tpId=37&&tqId=21
331&rp=1&ru=/activity/oj&qru=/ta/huawei/question-ranking
【解题思路】:
最小公倍数 = 两数之积除以最大公约数,这里使用碾转相除法进行最大公约数的求解:即 a b 的最大公约数
可以转化为 a b 之间的余数为两者之间最小的数之间的公约数。所以对于输入的两个数进行连续求余,直到
余数为 0 ,求余的分母即为结果。
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int m=sc.nextInt();
int n=sc.nextInt();
int mn=gdc(m,n);
System.out.println(m*n/mn);
}
public static int gdc(int m,int n){
int r;
if(m==n){
return m;
}
if(m<n){
int temp=m;
m=n;
n=temp;
}
while((r=m%n)>0){
m=n;
n=r; 
}
return n;
}
}

 posted on 2023-10-31 21:12  dapaige  阅读(8)  评论(0)    收藏  举报  来源