코딩테스트 문제
[백준/Python] 최대공약수와 최소공배수
왕초보코딩러
2024. 9. 11. 22:58
728x90
https://www.acmicpc.net/problem/2609
재귀함수를 이용한다
최대공약수: (나누는 수, 나머지)
최소 공배수: 최대 공약수 * 몫 * 몫
# a가 더 큼
def gcd(a, b):
if a%b == 0:
return b # 작은 수
return gcd(b, a%b)
a, b = map(int, input().split())
# a를 더 큰 값으로
if b>a:
a, b = b, a
res = gcd(a, b)
# 최대공약수
print(res)
# 최소공배수
print(res * (a//res) * (b//res))