2024-02-05 12:03:36 -05:00
|
|
|
import numpy as np
|
|
|
|
import math as m
|
|
|
|
|
|
|
|
|
|
|
|
def pascal(n: int) -> np.ndarray:
|
|
|
|
p = np.zeros(n + 1)
|
|
|
|
for i in range(n + 1):
|
|
|
|
p[i] = m.factorial(n) / (m.factorial(i) * m.factorial(n - i))
|
|
|
|
return p
|
|
|
|
|
|
|
|
|
|
|
|
def normalized_pascal(n: int) -> np.ndarray:
|
|
|
|
return pascal(n) / 2 ** n
|
|
|
|
|
|
|
|
|
|
|
|
N = 10
|
|
|
|
heads = np.arange(N + 1)
|
|
|
|
print("heads:", heads)
|
|
|
|
|
|
|
|
print("pascal:", normalized_pascal(N))
|