728x90
최대공약수
- math 내장 함수 사용하기
math.gcd(n, m)
유클리드 호제법
| a와 b 의 최대공약수는 (a를 b로 나눈 나머지)와 b 의 최대공약수와 같다.
# a < b 유지
if(b>a) : a,b = b,a
while(b!=0):
a=a%b
a,b=b,a
- 큰 수를 작은 수로 나누고 나누어 떨어질 때까지 계속 반복
최소공배수
- math 내장 함수 사용하기
math.lcm(n, m)
- python 3.9부터 지원된다!
- 직접 구현하기
import math
def lcm(a,b):
return (a * b) // math.gcd(a,b)
728x90
'📊 Algorithm > Paradigm' 카테고리의 다른 글
[Python/수학-정수론] 에라토스테네스의 체 (0) | 2022.06.02 |
---|---|
[알고리즘 대비 - 이코테] 8. 최단 경로 (0) | 2022.05.25 |
[알고리즘 대비 - 이코테] 7. 다이나믹 프로그래밍 (0) | 2022.03.30 |
[알고리즘 대비 - 이코테] 6. 이진 탐색 (0) | 2022.02.10 |
[알고리즘 대비 - 이코테] 5. 정렬 (0) | 2022.01.29 |