n = 2
arr = [0.4] * n
def solve(n, arr):
rs = [0.]
rs.extend(arr)
rs.append(0.)
xs = [[0., 1.]]
xs.extend([[0., 0.] for _ in range(n + 1)])
ans = 0
for _ in range(1000):
_xs = [[] for _ in range(n + 2)]
for i in range(1, n + 1):
x = xs[i - 1][1] * rs[i] + xs[i + 1][0] * (1 - rs[i])
y = xs[i - 1][1] * (1 - rs[i]) + xs[i + 1][0] * rs[i]
_xs[i] = [x, y]
_xs[0] = [xs[1][0], 0.]
_xs[n + 1] = [0., xs[n][1]]
xs = [[e[0], e[1]] for e in _xs]
ans += xs[0][0]
return ans
print(solve(n, arr))
To embed this program on your website, copy the following code and paste it into your website's HTML: