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