성장일기

[python] 백준 20003 - 거스름돈이 싫어요 본문

알고리즘 문제

[python] 백준 20003 - 거스름돈이 싫어요

김몽몽 2021. 12. 29. 15:53

분수로 이루어진 아이템,

모든 아이템을 딱 떨어지게 나눌 수 있는 가격 단위 구하기

새로운 가격 단위는 최대 몇 코인인가

(분수 형태로 출력- 분자 분모)

import fractions
def gcd(a,b):
    if b==0:
        return a
    else:
        return gcd(b,a%b)
def lcm(a,b):
    return a*b//gcd(a,b)

n=int(input())
g,l=0,1
for i in range(n):
    a,b=map(int,input().split())
    temp=fractions.Fraction(a,b)
    g=gcd(g,temp.numerator)  #분자
    l=lcm(l,temp.denominator)  #분모 즉, 0이 올 수 없음

print(g,l)