import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 long a = in.nextLong(); long b = in.nextLong(); System.out.println(result(a, b)); } // 求最大公约数(更相损减法) public static long getGCB(long a, long b, long two_num) { if (a % 2 == 0 && b % 2 == 0) { two_num ++; return getGCB(a / 2, b / 2, two_num); } else { if (a > b) { return getGCB(a - b, b, two_num); } else if (b > a) { return getGCB(b - a, a, two_num); } else { if (two_num == 0) { return a; } else { return a * (int)Math.pow(2, two_num); } } } } public static long result(long a, long b) { long GCB = getGCB(a, b, 0); long LCM = a * b / GCB; // 求最小公倍数 return GCB + LCM; } }