Level 1. 최대공약수와 최소공배수

Pear_Mh·2021년 6월 18일
0

Programmers-Level 1.

목록 보기
42/49

42. 최대공약수와 최소공배수

코딩테스트 연습 > 연습문제 > 최대공약수와 최소공배수
https://programmers.co.kr/learn/courses/30/lessons/12940


문제 설명

Input value =

  • n,m = 정수

Output value =

  • GCD,LCM

제한 조건

ㆍ 두 수는 1이상 1,000,000이하의 자연수다.


문제 구상

#00
n,m = 3,12
#01-1
from math import gcd,lcm
[gcd(n,m),lcm(n,m)]
#01-2
for i in range(1,max(n,m)+1):
    if n%i==0 and m%i==0:
        gcd = i
for i in range(max(n,m),n*m+1):
    if i%n==0 and i%m==0:
        lcm = i
        break
#02
[gcd,lcm]

문제 풀이

from math import gcd,lcm 라이브러리 이용

from math import gcd,lcm
def solution(n,m):
    return [gcd(n,m),lcm(n,m)]

# Code test
n,m = 3,12
solution(n,m)

for-if 반복문 이용

def solution(n,m):
    for i in range(1,max(n,m)+1):
        if n%i==0 and m%i==0:
            gcd = i
    for i in range(max(n,m),n*m+1):
        if i%n==0 and i%m==0:
            lcm = i
            break
    return [gcd,lcm]

# Code test
n,m = 3,12
solution(n,m)

마치며

  1. 문제에서 요구하는 사항이 무엇인지에 따라 적절한 라이브러리를 사용하기 위해 주요 라이브러리를 정리해보자.
profile
Beyond the new era.

0개의 댓글