알고리즘/프로그래머스

[프로그래머스] Level2, N개의 최소공배수 (Python)

wookcode 2021. 6. 4. 17:26
728x90
반응형

문제

https://programmers.co.kr/learn/courses/30/lessons/12953?language=python3 

 

코딩테스트 연습 - N개의 최소공배수

두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배

programmers.co.kr

 

코드

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

최대공약수 gcd는 math.gcd를 이용해 구해주고

최소공배수 lcm은 A * B // gcd(A,B) 이므로 for문을 돌면서 맨 마지막 answer를 return 해주면 된다.

반응형