题解 | #求最小公倍数#
求最小公倍数
https://www.nowcoder.com/practice/22948c2cad484e0291350abad86136c3
思路:最大的公倍数为:a * b,取两个数中较小的数来自加然后和较大的数取余,如果余数是0的话,这个数就是最小公倍数,代码如下:
import java.util.*; import java.io.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) throws IOException { // Scanner in = new Scanner(System.in); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str; // 注意 hasNext 和 hasNextLine 的区别 while ((str = br.readLine()) != null) { // 注意 while 处理多个 case String[] s = str.split(" "); //保证 int min = Integer.parseInt(s[0]); int max = Integer.parseInt(s[1]); if (max == min) { System.out.println(min); break; } else if (min > max) { int temp = max; max = min; min = temp; } // int min = a > b ? b : a; // for (int i = min; i <= a * b; i += min) { // if (i % (a > b ? a : b) == 0) { // System.out.println(i); // break; // } // } int quotient = max / min; for (int i = (min * quotient); i <= max * min; i += min) { if (i % max == 0) { System.out.println(i); break; } } } } }