최대공약수와 최소공배수

시간 제한1초메모리 제한128 MB

문제

두 자연수의 최대공약수와 최소공배수가 주어진다. 이 값을 각각 최대공약수와 최소공배수로 갖는 두 자연수를 찾아야 한다.

조건을 만족하는 쌍은 여러 개일 수 있다. 예를 들어 최대공약수가 6이고 최소공배수가 180인 경우에는 (12, 90), (30, 36), (18, 60), (6, 180) 등이 가능하다. 이때 두 수의 합이 가장 작은 쌍을 선택한다.

주어진 두 값을 각각 최대공약수와 최소공배수로 하는 두 자연수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 두 자연수 GL이 공백으로 구분되어 주어진다. G는 찾아야 할 두 자연수의 최대공약수이고, L은 그 두 자연수의 최소공배수이다. 두 수는 모두 2 이상 100,000,000 이하이다.

출력

조건을 만족하는 두 자연수를 작은 수부터 공백으로 구분해 출력한다. 가능한 쌍이 여러 개라면 두 수의 합이 가장 작은 쌍을 출력한다.