У нас есть список, давайте возьмем его
lst = [1,2,3,4,5]
Я хочу получить результат как умножение всех элементов подсписка
, например:
result = [1,2,3,4,5,2,6,24,120,6,24,120,12,60,20]
За минимально возможное время
Объяснение приведенного выше результата: есть подмножества lst:
sublist = [[1],[2],[3],[4],[5],[1,2],[1,2,3],[1,2,3,4],[1,2,3,4,5],[2,3],[2,3,4],[2,3,4,5],[3,4],[3,4,5],[4,5]]
Я пробовал, но его время выполнения очень сильно
N=[1,2,3,4]
X=[]
for i in range(len(N)+1):
for j in range(len(N)+1):
c=N[i:j]
X.append(c)
print(X)
X2 = [x for x in X if x != []]
print(X2)
S=[]
for i in X2:
p=1
for j in i:
p=p*j
S.append(p)
print(S)