📜  Python|列表中前缀的乘积

📅  最后修改于: 2022-05-13 01:55:34.035000             🧑  作者: Mango

Python|列表中前缀的乘积

如今,特别是在竞争性编程领域,计算前缀积的应用非常流行,并且存在很多问题。因此,拥有一个单一的解决方案将有很大的帮助。让我们讨论一下可以解决这个问题的某种方法。

方法:使用列表理解+列表切片
这个问题可以通过以上两个函数的组合来解决,我们使用列表推导将逻辑扩展到每个元素,然后计算产品,切片用于获取产品直到特定索引。

# Python3 code to demonstrate
# Product of Prefix in list
# using list comprehension + list slicing 
  
# compute prod
def prod(test_list):
    res = 1
    for ele in test_list:
        res = res * ele
    return res
      
# initializing list
test_list = [3, 4, 1, 7, 9, 1]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + list slicing
# Product of Prefix in list
res = [prod(test_list[ : i + 1 ]) for i in range(len(test_list))]
  
# print result
print("The prefix prod list is : " + str(res))
输出 :
The original list : [3, 4, 1, 7, 9, 1]
The prefix prod list is : [3, 12, 12, 84, 756, 756]