Python|乘法直到 Null 值
前缀数组在编程界非常有名。本文将讨论该方案的一种变体。这将处理累积列表产品直到 False 值,并再次从 True 值的出现开始累积产品。让我们讨论一下可以执行此操作的特定方式。
方法#1:使用朴素方法
在朴素的方法中,我们只是构造了由 prev 的乘积组成的新列表。 list 的值直到 False 并在遇到 True 值时重新启动过程。
# Python3 code to demonstrate
# Multiplication till Null value
# using naive method
# initializing list of lists
test_list = [1, 3, 4, False, 4, 5, False, 7, 8]
# printing original list
print ("The original list is : " + str(test_list))
# Multiplication till Null value
# using naive method
for i in range(1, len(test_list)):
if test_list[i]:
test_list[i] *= test_list[i - 1]
else:
test_list[i] = 1
# printing result
print ("The computed modified new list : " + str(test_list))
输出 :
The original list is : [1, 3, 4, False, 4, 5, False, 7, 8]
The computed modified new list : [1, 3, 12, 1, 4, 20, 1, 7, 56]