HJ82_将真分数分解为埃及分数_数学

发布时间 2023-04-05 15:43:04作者: Aneverforget

参考高赞答案思路:

将真分数分子、分母分别x2。目的使循环:分母除分子余数为0存在。

 1 import sys
 2 a=[]
 3 for line in sys.stdin:
 4     a.append(line.strip().split("/"))
 5 for i in a:
 6     l=[]
 7     a=int(i[0])*2
 8     b=int(i[1])*2
 9     while a:
10         for j in range(a,0,-1):#for j in range(0,a)[::-1]:这个循环错误使a不在range中,而0在range中。
11             if (b%j==0):
12                 l.append(b//j)
13                 a=a-j       #根据是:a/b=j/b+(a-j)/b
14                 #print(a,b,j)
15                 break
16     res=["1/"+str(i) for i in l]
17     print("+".join(res))