Math 라이브러리- 라이브러리는 위대하다

개발세발·2024년 5월 10일

최대공약수와 최소공배수

백준 문제- 13241번
백준 문제 - 1735번

최대공약수와 최소공배수를 활용해야 하는 문제를 풀었습니다. 빡구현을 시도할까 생각하던 중 전에 이진탐색과 카운터 라이브러리를 사용했던 것이 생각이 나서 최대공약수와 최소공배수도 라이브러리를 사용해서 구할 수 있지 않을까? 싶었습니다.

Math 라이브러리

아니나 다를까 math.lcm(), math.gcd()의 이름으로 최대공약수와 최소공배수를 구하는 메서드가 있었습니다...ㅋㅋㅋㅋㅋ
이를 적극 활용하기로 하면서 문제를 스무스하게 해결할 수 있었습니다.

#13241번
import math
a, b = map(int, input().split())
print(math.lcm(a, b))
#1735번
import math
a, b = map(int, input().split())
c, d = map(int, input().split())
ne = (a*d)+(b*c)
de = b*d
print(ne//math.gcd(b*d, (a*d)+(b*c)), de//math.gcd(b*d, (a*d)+(b*c)))

0개의 댓글