본문 바로가기
Python3/백준 알고리즘

2022.02.23 [백준] (python 파이썬) 최대공약수와 최소공배수

by ian's coding 2022. 2. 23.
728x90
반응형

 

https://www.acmicpc.net/problem/2609

 

2609번: 최대공약수와 최소공배수

첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

www.acmicpc.net

 


풀이

 

 

최소 공배수를 구하는 방식은 아래와 같다.

출처 : https://dimenchoi.tistory.com/46

또한 n*m=최대공약수*최대공배수 가 성립한다.

그래서 최소공배수는 n*m/최대공약수이다.

위의 방식을 코드로 옮겨주면 아래와 같다.

1
2
3
4
5
6
7
8
9
10
11
n,m=map(int,input().split())
 
def gcd(a,b):
    if a%b==0:
        return b
    else:
        return gcd(b,a%b)
 
x=gcd(n,m)
print(x)
print(n*m//x)
cs

 

 

 

728x90
반응형

댓글