Ускорить код Python
Решение задачи на сайте Codewars не проходит проверку по времени. Там на форуме вроде кто то писал что делал на python. значит у него задача прошла по времени.
----- текст условия -----
Пирамиды восхитительны! И в архитектурном, и в математическом смысле. Если у вас есть компьютер, вы можете возиться с пирамидами, даже если вы в это время не в Египте. Например, рассмотрим следующую задачу. Представьте, что у вас есть пирамида, построенная из чисел, как здесь:
/3/
\7\ 4
2 \4\ 6
8 5 \9\ 3
Вот и задача... Предположим, что «скольжение вниз» — это максимальная сумма последовательных чисел от вершины к основанию пирамиды. Как видите, самое длинное «скольжение вниз »3 + 7 + 4 + 9 = 23 Ваша задача состоит в том, чтобы написать функцию, которая принимает представление пирамиды в качестве аргумента и возвращает ее « самое большое скольжение вниз» . Например:
- With the input
[[3], [7, 4], [2, 4, 6], [8, 5, 9, 3]] - Your function should return
23. (https://www.codewars.com/kata/551f23362ff852e2ab000037/train/python) ----- мое решение ---
def longest_slide_down(pyramid):
def f2(a, b):
return pyramid[a][b] + max(f2(a + 1, b), f2(a + 1, b + 1)) if a < l else pyramid[a][b]
l = len(pyramid) - 1
return f2(0, 0)
решает всё правильно, не проходит по времени(