某种函数可以找到给定埃及分数的标准分数表示法。
例如:
input: 3, 15
output: 2/5
解释了那些不熟悉埃及分数的人:
(1/3 + 1/15) = 18/45 = 2/5
什么样的等式可以做到这一点?如果不是一个等式那么什么样的操作呢?
答案 0 :(得分:2)
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)
答案 1 :(得分:1)
这看起来更像是数学问题,而不是Python问题,但我会给你一些提示:
str.split
)int(x)
)用于添加分数:a/b + c/d = (ad+cb)/bd
,a
和c
为1,简化为(d+b)/db
如果您对添加和减少分数感到懒惰,请查看this