Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Solution solution in Clear category for Stair Steps by IrinaNizova
def checkio(numbers):
D = [0]
for i in range(1, len(numbers)+1):
D.append(0)
if i == 1:
D[1] = numbers[0]
else:
D[i] = max(D[i-1], D[i-2]) + numbers[i-1]
return max(D[-1], D[-2])
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
assert checkio([5, -3, -1, 2]) == 6, 'Fifth'
assert checkio([5, 6, -10, -7, 4]) == 8, 'First'
assert checkio([-11, 69, 77, -51, 23, 67, 35, 27, -25, 95]) == 393, 'Second'
assert checkio([5,4,3,-99,2,-20]) == 14, 'Third'
print('All ok')
Dec. 8, 2015