Coding Test
[백준] 최소공배수
상상쓰
2021. 9. 14. 17:08
https://www.acmicpc.net/problem/1934
1934번: 최소공배수
두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있
www.acmicpc.net
유클리드 호제법을 이용하여 최대공약수(gcd)를 구한 후, 최소공배수(lcd) = a * b // gcd 를 구한다.
import sys
def gcd(a, b):
if a % b == 0:
return b
else:
return gcd(b, a%b)
T = int(sys.stdin.readline())
for i in range(T):
a, b = map(int, sys.stdin.readline().split())
print(a * b // gcd(max(a, b), min(a, b)))