유클리드 호제법을 사용한 최소공배수 구하기가 정석이지만! (아래코드 참고)
def gcd(m, n): #최소공배수
if n == 0:
return m
elif m % n == 0:
return n
return gcd(n, m%n)
def lcm(m, n): #최대공약수
return (m * n) // gcd(n, m)
파이썬에서는 라이브러리로 쉽게 해결 가능하다. (파이썬 3.9이상만 lcm 지원)
import math
print(math.gcd(78696, 19332)) # 36, 최소공배수
print(math.lcm(33,66)) # 66, 최대공약수
'Coding Test > Python' 카테고리의 다른 글
[프로그래머스 Lv.2] 캐시 파이썬 풀이 (1) | 2023.10.19 |
---|---|
[프로그래머스 Lv.2] 후보키 파이썬 풀이 (1) | 2023.10.11 |
[Python] 약자 만들기.py (0) | 2021.10.05 |
[Python] 소수이자 피보나치 넘버.py (0) | 2021.10.05 |
[Python] map 함수 (0) | 2021.09.06 |