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

将真分数分解为埃及分数

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

如果全部都分母相同分子为1,答案也算对。
主要是剔除分子的一个过程,9/20,循环分子,9 8 7 6 5 4,4可以被20整除,20/4 = 5, 剔除一个 4/20, 还剩下5/20,循环5 4 3  5可以整除,剔除干净,得,4/20,5/20,记为 1/5+1/4=9/20
while True:
    try:
        a, b = map(int, input().split('/'))
        # a = a * 10
        # b = b * 10
        res = []
        while a:
            for i in range(a, 0, -1):
                if b % i == 0:
                    res.append('1' + '/' + str(int(b / i)))
                    # print(a, i)
                    a = a - i
                    break
        print('+'.join(res))
    except:
        break


全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务