공부하기/백준

[Python] 백준 풀기 1934 - 최소공배수

XEV 2023. 10. 8. 22:18

파이썬 백준 1934번

브론즈 1

https://www.acmicpc.net/problem/1934

 

1934번: 최소공배수

두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 수학, 정수론, 유클리드 호제법

 

 

 

 

 

코드 보기

import sys
inputdata = sys.stdin.readline

# 두 수의 최대 공약수를 계산하는 함수
def greatestCommonDivisor(num1, num2):
    while num2:
        num1, num2 = num2, num1 % num2
    return num1

# 두 수의 최소 공배수를 계산하는 함수
def leastCommonMultiple(num1, num2):
    return num1 * num2 // greatestCommonDivisor(num1, num2)

if __name__ == "__main__":
    # 첫 번째 줄에서 정수 n을 입력받음
    n = int(inputdata())
    
    # n번의 반복을 통해 n쌍의 숫자를 처리하고 최소 공배수를 출력
    for i in range(0, n):
        # 한 줄에서 두 개의 정수를 읽어와서 num1, num2 변수에 할당
        num1, num2 = map(int, inputdata().split())
        
        # 두 수의 최소 공배수를 계산하여 result 변수에 할당
        result = leastCommonMultiple(num1, num2)
        
        # 결과를 출력
        print(result)