S E P H ' S

[Python] BJ.2609 최대공약수와 최소공배수 본문

Algorithm/BackJoon

[Python] BJ.2609 최대공약수와 최소공배수

yoseph0310 2021. 12. 27. 18:56
 

2609번: 최대공약수와 최소공배수

첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

www.acmicpc.net

풀이

최대공약수 : 두 수의 약수 중에서 가장 큰 수. 유클리드 호제법에 의해 쉽게 구할 수 있다.

최소공배수 : 두 수의 공통된 배수 중에서 가장 작은 수. 주어진 두 수의 곱에서 두 수의 최대공약수를 나눈 값과 같다.

 

def GCD(a, b):
	while b:
    	a, b = b, a % b
    return a
    
def LCM(a, b):
	return a * b // GCD(a, b)

a, b = map(int, input().split())
print(GCD(a, b))
print(LCM(a, b))

'Algorithm > BackJoon' 카테고리의 다른 글

[Python] BJ.10989 수 정렬하기 3  (0) 2022.06.13
[Java] BJ.10989 수 정렬 3  (0) 2022.06.13
[Python] BJ.1261 알고스팟  (0) 2021.09.07
[Python] 13300 방배정  (0) 2021.06.20
[Python] 10163 색종이  (0) 2021.06.20