Home [Programmers] 분수의 덧셈
Post
Cancel

[Programmers] 분수의 덧셈

[Programmers] 지역별 주문의 특징

출처

문제

image1

풀이

  • import math, gcd의 존재를 모른상태로 무식하게 풀었다.
  • 편리한 기능을 활용하자.
1
2
3
4
5
6
7
8
9
10
11
def solution(numer1, denom1, numer2, denom2):
    answer = []
    numer = numer1*denom2 + numer2*denom1 # 분자
    denom = denom1*denom2 # 분모

    for i in range(min(numer, denom), 0, -1): # 최대공약수를 구하기 위한 반복문
        if (numer % i == 0) & (denom % i == 0):
            break # 최대공약수를 찾으면 반복문 종료
            
    answer = [numer//i, denom//i]
    return answer # 결과 반환

다른 사람의 풀이 1

1
2
3
4
5
from fractions import Fraction

def solution(denum1, num1, denum2, num2):
    answer = Fraction(denum1, num1) + Fraction(denum2, num2)
    return [answer.numerator, answer.denominator]

다른 사람의 풀이 2

1
2
3
4
5
6
7
import math

def solution(denum1, num1, denum2, num2):
    denum = denum1 * num2 + denum2 * num1
    num = num1 * num2
    gcd = math.gcd(denum, num)
    return [denum//gcd, num//gcd]

gh-pages

This post is licensed under CC BY 4.0 by the author.

[solvesql] 가구 판매의 비중이 높았던 날 찾기

[Programmers] 중앙값 구하기