我正在尝试完成Project Euler 48。
我遇到了一个问题,我要附加的内容不能下标。如何避免这种情况?
我删除了附加到列表的for循环,并要求它打印出n
,并且工作正常。当我放回for循环并仅告诉它将n
附加到列表时,它可以工作,但是当我尝试附加n[b]
时,代码将失败。
i = 1 #Variable 1 to for the for loop coming later
n = 0 #Variable 2 to collect to the sum of all the integers
Final = [] #List that the final 10 digits will be append to
for i in range (1, 1000):
n = n+ i**i #Groups the sum of the self powers into 1 variable
a = 0 #Declaring variable for next loop
for a in range (0, 9):
b = -10+a
Final.append(n[b]) #To append n[-10], n[-9] to n[-1], etc to the list, final
a += 1 # So the value of b reduces
print (Final) #Print results :)
我所期望的是从1到1000的所有自幂的和的最后10位数字。实际出现的是可细分的错误。
答案 0 :(得分:1)
您几乎拥有它:n是一个int,所以n [i]不起作用。
您要实现的目标是获取数字,只需询问数字字符串即可,而不是数字本身即可访问数字:
digits = str(n)