题解 | #将真分数分解为埃及分数#

将真分数分解为埃及分数

https://www.nowcoder.com/practice/e0480b2c6aa24bfba0935ffcca3ccb7b

while True:
    try:
        def yuefen(a, b):
            while True:
                yu = a % b
                if yu == 0:
                    break
                else:
                    a, b = b, yu
            return b
        zi, mu = map(int, input().split('/'))

        yue = yuefen(zi, mu)
        if yue > 1:
            zi = zi / yue
            mu = mu / yue
        while zi > 1:
            shang = mu // zi
            yu = mu % zi
            zi = zi * shang + zi - mu
            mu = mu * shang + mu
            yue = yuefen(zi, mu)
            if yue > 1:
                zi = zi / yue
                mu = mu / yue
            print(f'1/{int(shang + 1)}', end='+')
        print(f'1/{int(mu)}')
    except:
        break

全部评论

相关推荐

迷茫的大四🐶:那你问他上班之后老实了没
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务