Question:codility Lesson9 MaxDoubleSliceSum
My Answer:
def solution(A):
lenA = len(A)
maxdoublesum = 0
maxslice = 0
maxcur = 0
minele = A[1] if A[1] > 0 else 0
for i in range(2,lenA - 1):
if A[i] <= minele:
maxslice = maxslice + minele
minele = A[i]
else:
maxslice = maxslice + A[i]
if maxslice <= maxcur:
maxslice = maxcur
minele = A[i]
maxcur = max(0,maxcur + A[i])
maxdoublesum = max(maxdoublesum,maxslice)
return maxdoublesum