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

将真分数分解为埃及分数

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

while True:
    try:
        res = []
        numerator, denominator = list(map(int, input().strip().split('/')))
        temp_deno = 2
        remain_num, remain_deno = numerator, denominator
        while remain_num != 0:
            if 1 / temp_deno > remain_num / remain_deno:
                temp_deno += 1
            else:
                remain_num = remain_num * temp_deno - remain_deno
                remain_deno = temp_deno * remain_deno
                res.append(temp_deno)
                if remain_num != 0:
                    temp_deno = remain_deno // remain_num
        s = ''
        for r in res:
            s += f'1/{r}+'
        print(s[:len(s)-1])
    except:
        break

全部评论

相关推荐

明明就不饿:看不懂你到底会啥,什么岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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