import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); long gcd = scan.nextInt(); long lcm = scan.nextInt(); long multi = gcd*lcm; long min = Long.MAX_VALUE; long a = 0,b = 0; for (long i = gcd; i <= Math.sqrt(multi); i++) { if (multi%i == 0&&f(multi/i,i) == gcd) { if (i+multi/i<min) { min = i+multi/i; a = i; b = multi/i; } } } System.out.println(a+" "+b); } private static long f(long l, long i) { while (l%i != 0) { long t = (l%i); l = i; i = t; } return i; } } |
Double click to view unformatted code.