指定されたエジプト分数の標準分数表記バージョンを見つけるある種の関数。
例えば:
input: 3, 15
output: 2/5
エジプトの分数に慣れていない人のために説明します:
(1/3 + 1/15) = 18/45 = 2/5
これを行う方程式は何ですか?方程式でない場合、どの演算セットですか?
from fractions import Fraction
def egyptian(a, b):
frac = (Fraction(1.0/a) + Fraction(1.0/b)).limit_denominator()
return frac.numerator, frac.denominator
egyptian(3, 15)
>>> (2L, 5L)
これは Python の問題というよりも数学の問題のように見えますが、いくつかのヒントを示します。
str.split
)int(x)
)分数の加算: a/b + c/d = (ad+cb)/bd
、a
とc
が 1 であるため、単純化して(d+b)/db
または、分数の足し算や引き算が苦手な方はこちらをご覧ください