1. 최대공약수와 최소공배수
URL : https://programmers.co.kr/learn/courses/30/lessons/12940
1.1 문제 설명
- 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다.
- 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다.
1.2 제한 사항
- 두 수는 1이상 1000000이하의 자연수입니다.
1.3 Solution
1
2
3
4
5
6
7
8
import math
n = 2
m = 5
# 최대 공약수
math.gcd(n,m)
1
1
- Python의 math 메서드를 사용해서 최대공약수를 구할수 있음
1
2
# 최소공배수
n * m // math.gcd(n,m)
1
10
- 최대 공약수를 활용하여 최소 공배수도 구할수 있음
1
2
3
4
5
6
7
8
import math
def solution(n, m):
answer = []
# 최대 공약수
answer.append(math.gcd(n,m))
# 최소 공배수
answer.append(n * m // math.gcd(n,m))
return answer
1
solution(n, m)
1
[1, 10]
- 위의 코드를 함수로 작성