[프로그래머스 | Python] N개의 최소공배수

게으른 완벽주의자·2023년 2월 6일
0

프로그래머스

목록 보기
43/83
post-custom-banner

프로그래머스_N개의 최소공배수

import math
def solution(arr):
    answer = arr[0]
    for i in range(len(arr)):
        answer = answer*arr[i] // math.gcd(answer, arr[i])
    return answer

사실 최소공배수는 math.lcm()이면 한 번에 구할 수 있다
이 부분을 방지하기 위해서인지 lcm을 사용하려고 하면 attributeerror가 뜨더라

그래서 최대공약수인 math.gcd()를 사용하기로 했다
a,b라는 수가 있을 때 이 두 수의 최소공배수는 axb // 최대공약수로 표현할 수 있다

그래서 answer를 0이 아닌 arr의 첫번째 값을 둔 후, arr의 모든 값 순차적으로 확인하면서 최소공배수를 answer에 업데이트 하면 된다

profile
데이터를 공부하고 있습니다
post-custom-banner

0개의 댓글