최소공배수

면접 대비

시간 제한2초메모리 제한512 MB

요약
기약 분수 두 개가 주어질 때, 두 분수로 나누어떨어지는 가장 작은 양의 기약 분수를 구한다.
난이도

보통10점 중 4점

유형
수학, 정수론, 정렬
정답자
아직 제출이 없습니다

문제

최소공배수는 수학에서 잘 알려진 용어로, 주어진 수들 모두로 나누어지는 가장 작은 수이다. 최소공배수의 개념은 수학의 다른 대상, 예를 들어 분수에도 일반화할 수 있다.

두 기약분수가 주어진다. 이들의 최소공배수, 즉 p/qp / q 를 주어진 분수 중 어느 것으로 나누어도 결과가 정수가 되는 가장 작은 양의 기약분수 p/qp / q 를 구하여라.

입력

입력에는 여러 테스트 케이스가 들어 있다. 입력의 첫 줄에는 테스트 케이스의 수 tt 가 주어진다 (1≤t≤50 0001 \le t \le 50\,000).

각 테스트 케이스는 한 줄로 주어지며, 기약분수 a/ba / b 와 c/dc / d 에 해당하는 네 개의 양의 정수 a,b,c,da, b, c, d 가 들어 있다 (1≤a,b,c,d≤1091 \le a, b, c, d \le 10^9). a/ba / b 와 c/dc / d 는 모두 기약분수임이 보장된다.

출력

각 테스트 케이스마다 한 줄을 출력한다. 주어진 분수 a/ba / b 와 c/dc / d 의 최소공배수인 분수의 분자와 분모를 두 정수로 출력한다.

예제1

  1. 예제 1

    입력
    2
    9 5 12 5
    1 10 3 100
    
    예상 출력
    36 5
    3 10