import math
def log2(x):
return math.log(x,2)
def devide(x):
s=[]
if x==1:
return ["2(0)"]
for i in range(1,x):
if 2**i>x/2:
x=x-2**i
if i==1:
s.append("2")
else :s.append("2(");s.append(i);s.append(")")
if x==0:
return s
else :
s.append("+")
s.append(x)
return s
return s
def insert_elements(lst, index, items):
for item in items:
lst.insert(index, item)
index += 1
xx=input()
x=[];x.append(int(xx))
flag=1
while(flag):
flag=0
i=0
while(i<len(x)):
if isinstance(x[i],int) and x[i]!=0 and x[i]!=2 :
s=devide(x[i])
x.pop(i)
insert_elements(x,i,s)
flag=1
i+=1
else:i+=1
for thing in x:
print(thing,end="")
这个思路怎么说
大家评价一下怎么改进,谢谢^_^