x=int(input())
d=list(map(int,input().split(' ')))
h=[]
g=0
m=[]
def digui(z,g):
if z==1:
return 1
if z in h:
return 1
if not(z in h) and g==1:
h.append(z)
g=1
if z%2==0:
return(digui(int(z/2),g))
else:
return(digui(z*3+1,g))
for i in d:
g=0
digui(i,g)
for i in range(len(d)-1,-1,-1):
if not(d[i] in h):
m.append(d[i])
m.sort(reverse=True)
for j in range(0,len(m)):
print(m[j],end="")
if j<len(m)-1:
print(end=" ")
卡到了最后一个测试点上了前几个都对了最后一个提示是答案错误 本人新接触python实在想不出来错误原因
附 d为初始列表(获取输入的数)
h为已经验证的数的列表
m为结果列表