我的任务:
您的任务是按降序对数组中连续对之间的差异求和。
示例 [2, 1, 10] --> 9 按降序排列:[10, 2, 1]
总和:(10 - 2) + (2 - 1) = 8 + 1 = 9
如果数组为空或数组只有一个元素,则结果应为:0
这是我的代码:
a = sorted(arr)[::-1]
b = [a[i:i+2] for i in range(len(a)-1)]
c = []
for i in range(len(b)):
for j in range(len(b[i])):
try:
c.append(int(b[i][j]-b[i][j+1]))
except IndexError:
break
return sum(c)
不断尝试拯救我,免得越界,还有其他方法吗?
您的任务可以更容易地解决,为此您不需要任何任务
try-except- 当然,除非 TOR 需要它们。arr也可以不同,我会用arr)。s- 对的相应差异的加法器。s。如您所见,我们只使用一个循环和一个数组进行管理,使程序更易于理解和使用:)