컴공생의 다이어리

[파이썬, Python] 최소공배수(LCM) 본문

Development/Python & Django

[파이썬, Python] 최소공배수(LCM)

컴공 K 2022. 4. 26. 00:01

최소공배수(Lowest Common Multiple, LCM)

  • 공배수(common multiple)란 두 수 이상의 여러 수의 공통된 배수를 의미
  • 최소공배수(LCM)란 두 수 이상의 여러 수의 공배수 중 최소인 수를 가리킴

TCP school

 

 

기본적인 방법
def lcm(a, b):
    for i in range(max(a, b), (a * b) + 1):
        if i % a == 0 and i % b == 0:
            return i

 

 

최대공약수 활용
def gcd(a, b):  # 최대공약수
    while b > 0:
        a, b = b, a % b
    return a


def lcm(a, b):
    return a * b / gcd(a, b)

혹은

import math

def lcm(a, b):
    return a * b / math.gcd(a, b)

 

 

파이썬 math 라이브러리 사용

이 방법은 파이썬 3.9버전부터 사용 가능

import math
a, b = 6, 15
math.lcm(a, b)

 

 

 

 

 

 

http://www.tcpschool.com/codingmath/common

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

https://bloowhale.tistory.com/103

 

[Python] 최소공배수와 최대공약수

GCD (Greatest Common Divisor) 이름에서 알 수 있듯이 두 수 혹은 그 이상의 여러 수의 공통인 약수 중, 최대인 것을 의미한다. 즉, 수들의 각각의 약수 중 공통이며 가장 큰 수를 최대공약수라고 한다. 8

bloowhale.tistory.com

https://slowsure.tistory.com/128

 

[Python/파이썬]최소공배수 & 최대공약수 & 약수

0. 개념 생략 1. 약수 약수를 지원하는 라이브러리는 없다. 하지만, 약수를 출력하는 방법에 따라 실행시간의 차이는 크다. 가장먼저 직관적으로 떠올리는 코드는 다음과 같을 것이다. # N의 약수

slowsure.tistory.com

 

728x90
Comments