코딩 테스트/프로그래머스
[Python] 프로그래머스 lv. 0 분수의 덧셈
위시리
2025. 3. 26. 17:28
풀이
[ 분자1, 분모1 ] + [ 분자2, 분모2 ] 라고 할 때
분수의 합에서
- 분자 = ( 분자1 * 분모2 ) + ( 분자2 * 분모1 )
- 분모 = ( 분모1 * 분모2 )
기약 분수로 나타내려면
분자와 분모의 최대공약수로 분자, 분모를 나눠주면 된다.
정답 코드
import math
def solution(numer1, denom1, numer2, denom2):
answer = []
# 분자
numer = numer1 * denom2 + numer2 * denom1
# 분모
denom = denom1 * denom2
# 최대공약수
n = math.gcd(numer, denom)
answer = [numer//n, denom//n]
return answer