본문 바로가기

알고리즘 & 코딩테스트/코딩테스트

Programmers Lv. 1 "최대공약수와 최소공배수"

Programmers Lv 1 최대공약수와 최소공배수, 연습문제, 정답률 76%

드디어 직접적인 내용이 문제로도 보인다.
이전 포스팅에서 간간히 약수, 배수와 관련된 내용을 많이 얘기했었는데 이에 대한 가장 직접적인 문제라고 생각한다.
내용은 심플하다. 말 그대로 최대공약수와 최소공배수를 구해서 하나의 리스트에 담아 리턴하면 된다.
알고리즘 카테고리의 "약수/배수와 GCD, LCM"를 참고하자.

def solution(a, b):
    x,y = a,b
    z = x%y
    while z>0:
        x,y=y,z
        z=x%y
    g=y
    return [g, a/g*b]