$$\left(
\begin{array}{ccccc}
& & & & N_{i-p,p}\left(u_0\right) \\
& & N_{i-2,2}\left(u_0\right) & & \\
& N_{i-1,1}\left(u_0\right) & & & \\
N_{i,0}\left(u_0\right) & & N_{i-1,2}\left(u_0\right) & \cdots & \vdots \\
& N_{i,1}\left(u_0\right) & & & \\
& & N_{i,2}\left(u_0\right) & & \\
& & & & N_{i,p}\left(u_0\right)
\end{array}
\right)$$$$\left(
\begin{array}{ccccc}
& & & & N_{i-p,p}\left(u_0\right) \\
& & N_{i-2,2}\left(u_0\right) & & \\
& N_{i-1,1}\left(u_0\right) & & & \\
\color{red}{N_{i,0}\left(u_0\right)=1} & & N_{i-1,2}\left(u_0\right) & \cdots & \vdots \\
& N_{i,1}\left(u_0\right) & & & \\
& & N_{i,2}\left(u_0\right) & & \\
& & & & N_{i,p}\left(u_0\right)
\end{array}
\right)$$
where $N_{m,n}$ was stored in the position $(p+1-i+m,n+1)$ of local array
So we can use the following triangular schematic digram to calculate $B_{n,0},B_{n,0}, \cdots B_{n,n}$$\color{blue}{B_{n,0},B_{n,0}, \cdots B_{n,n}}$
$$\left(
\begin{array}{ccccc}
\text{} & \text{} & \text{} & \text{} & B_{n,0} (u) \\
\text{} & \text{} & \text{} & .\cdot{}^{\cdot} & \text{} \\
\text{} & \text{} & B_{2,0}(u)& \text{} & \text{} \\
\text{} & B_{1,0} (u) & \text{} & \text{} & \text{} \\
B_{0,0} (u)=1 & \text{} & B_{2,1}(u)& \vdots & \vdots \\
\text{} & B_{1,0}(u) & \text{} & \text{} & \text{} \\
\text{} & \text{} & B_{2,2}(u)& \text{ } & \text{} \\
\text{} & \text{} & \text{} & \ddots & \text{} \\
\text{} & \text{} & \text{} & \text{} & B_{n,n} (u) \\
\end{array}
\right)$$$$\left(
\begin{array}{ccccc}
\text{} & \text{} & \text{} & \text{} & B_{n,0} (u) \\
\text{} & \text{} & \text{} & .\cdot{}^{\cdot} & \text{} \\
\text{} & \text{} & B_{2,0}(u)& \text{} & \text{} \\
\text{} & B_{1,0} (u) & \text{} & \text{} & \text{} \\
\color{red}{B_{0,0} (u)=1} & \text{} & B_{2,1}(u)& \vdots & \vdots \\
\text{} & B_{1,0}(u) & \text{} & \text{} & \text{} \\
\text{} & \text{} & B_{2,2}(u)& \text{ } & \text{} \\
\text{} & \text{} & \text{} & \ddots & \text{} \\
\text{} & \text{} & \text{} & \text{} & B_{n,n} (u) \\
\end{array}
\right)$$