Как найти максимальную сумму подмассива, если мне нужно удалить самый большой элемент в подмассиве

def maxsub(a,N): max_so_far = a[0] curr_max = a[0] for i in range(1,N): curr_max = max(a[i], curr_max + a[i]) max_so_far = max(max_so_far,curr_max) return max_so_far N = int(input()) arr = [int(input()) for _ in range(N)] if all(x > 0 for x in arr) == True: print(sum(arr) — max(arr)) else: print(maxsub(arr,N))

Этот код помогает найти максимальную сумму любого подмассива, но мне нужно найти, какая максимальная сумма подмассива ›будет, если мне придется удалить в нем самый большой элемент.

Например,
Если у нас есть 7 элементов в массиве как [0, -11,5,5, -10,0,50], максимальная сумма подмассива, если нам нужно удалить его самый большой элемент ‘будет 5
Для 5 элементов [-2,10, -2,10,6] ответ будет 14 < / strong>
Что мне здесь делать?

Похоже на проблему конкуренции — не могли бы вы дать ссылку на источник? Также насколько быстро приемлемо?   —  person keancodeup    schedule 09.05.2021

Источник: ledsshop.ru

Стиль жизни - Здоровье!