Мне нужна ваша помощь для расчета этой формулы. Правило применения для генерации B
a=[100,5,6,10] B[0]=1-a[0] B[1]=B[0]*(1-a[1]) B[n]=B[n-1]*(1-a[n]) a1=np.array([1-val for val in a]) a2=np.append([1],a) b=[a1[i]*a2[i] for i in range(len(a1))]
Можете ли вы помочь мне?
def gen_seq(alist): if alist == []: return [] tmp = [] for i,x in enumerate(alist): if i == 0: tmp.append(1-x) else: tmp.append(tmp[i-1]*(1-x)) return tmp In [14]: gen_seq([100,5,6,10]) Out[14]: [-99, 396, -1980, 17820]