我必须找到数组中的元素之和最大(或它们的置换形式),元件的值的阵列查找给定阵列的元件的最大总和
查找算法中取决于它们的位置在特定的阵列的合计如下
int taste = 0
for (int i= 0; i <= N; i++){
if (p[i]) - p[i-1]) >= 0):
taste += i * (p[i]) - p[i - 1])
else:
taste += i * (p[i - 1] - p[i])
我的解决办法是蟒蛇,但我总是得到的结果为0
from itertools import permutations
def sum_permuatations():
t = int(input())
taste = 0
maxTaste = 0
while (t!=0):
t = t-1
lent = input()
lis = input()
for p in permutations(lis, len(lent)):
for i in range(2,len(p)+1):
if (int(p[i]) - int(p[i-1]) >= 0):
taste += i*(int(p[i])-int(p[i-1]))
else:
taste += i*(int(p[i-1])- int(p[i]))
if taste > maxTaste:
maxTaste = taste
return maxTaste
请帮我解决我的共同的错误德。
'= +'不符合你的想法。它应该是'+ ='。 –
为什么你使用while循环,并在一个循环后才返回? –
我认为问题是缩进。最后的返回必须被缩进一步所以,它不能是while循环的一部分。 –