题目
答案
s = input()
n = len(s)
N = eval(s)
list = []
for i in range(N,10**n):
tmp1 = i
tmp2 = i
for item in range(n):
tmp2 = tmp2 - (tmp1%10)**n
tmp1 = tmp1//10
if tmp2 == 0:
list.append(str(i))
if len(list)==0:
print("无")
else:
print("{} ".format(len(list)),end="")
print(",".join(list))
注意
这道题,在判断是否为水仙花数时,如果是将各位相加再与原先的数比较是否相等,就会出现运行超时的情况;目前已知可以通过测试点(不超时)的方法就是将原先的数依次减去各位数字的n次方,最后判断是否减为0