백준 1735 분수 합

김민영·2023년 1월 12일
0

알고리즘

목록 보기
69/125

풀이 과정

  • 두 분수의 합을 기약분수 형태로 나타내기
  • 첫 번째 분수의 분자, 분모를 a1, b1, 두 번째 분수의 분자, 분모를 a2, b2라고 할 때, 분수 합의 분자는 a1 b2 + a2 b1, 분모는 b1 * b2이다.
  • 기약분수 형태로 나타내라고 하였으니 분자와 분모의 최대공약수로 서로를 나눈 값을 출력하면 된다.
a1, b1 = map(int, input().split())
a2, b2 = map(int, input().split())

def gcd(x, y):
    r = x % y
    while r > 0:
        x = y
        y = r
        r = x % y
    return y

G = gcd(a1 * b2 + a2 * b1, b1 * b2)
print((a1 * b2 + a2 * b1) // G, (b1 * b2) // G)
profile
노션에 1차 정리합니당 - https://cream-efraasia-f3c.notion.site/4fb02c0dc82e48358e67c61b7ce8ab36?v=

0개의 댓글