Я смущаюсь с этим вопросом в том, что он пытается спросить.
Записать функцию
mssl()
(минимальная сумма подписок), которая принимает в качестве входного списка список целых чисел. Затем он вычисляет и возвращает сумму максимальной суммы подсписок списка входных данных. Подсчет максимальной суммы является подсписком (срез) входного списка, сумма записей которого наибольшая. Пустое подсписок определяется как сумма 0. Например, максимальная сумма списка[4, -2, -8, 5, -2, 7, 7, 2, -6, 5]
есть[5, -2, 7, 7, 2]
и сумма его записей19
.
Если бы я использовал эту функцию, он должен был возвращать нечто похожее на
>>> l = [4, -2, -8, 5, -2, 7, 7, 2, -6, 5]
>>> mssl(l)
19
>>> mssl([3,4,5])
12
>>> mssl([-2,-3,-5])
0
Как я могу это сделать?
Вот моя текущая попытка, но она не дает ожидаемого результата:
def mssl(x):
' list ==> int '
res = 0
for a in x:
if a >= 0:
res = sum(x)
return res
else:
return 0