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

将真分数分解为埃及分数

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

# #解题思路:将真分数(a/b)拆分成a*(1/b),也就是a个1/b,然后我们从大到小依次找出a中能被B整除的数.
# 比如: 5/8 这个真分数首先我们看,5不能被8整除,但是4可以,那从5中把4分离出来,变成1+4,剩余的1不能拆分,那埃及分数就是1/8+1/2
 
# 再比如:7/8这个真分数,首先我们看,7不能被8整除,6不能被8整除,5不能被8整除,4可以整除,分子分离出4,还剩3,我们看3不能整除,2能整除,分离出2,还剩1, 埃及分数:1/8+1/4+1/2

# 一下为投机写法:
while 1:
    try:
        a,b = input().split('/')
        result = ''
        for _ in range(int(a)-1):
            result += '+1/%s'%b 
        result += '+1/%s'%(str(int(b)*2))
        result += '+1/%s'%(str(int(b)*2))
        print(result[1:])
    except:
        break 

全部评论
看懂了
点赞 回复 分享
发布于 2023-02-28 23:21 广东

相关推荐

10-13 16:58
门头沟学院 Java
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

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