I’d like to create a square upper triangular matrix that is defined as follows for some float c and some dimension N:
[[1 , c , c^2, ... c^N],
 [0,  1 ,   c, ... c^{N-1}],
 [0,  0 ,   1, ... c^{N-2}],
 .
 .
 .
 [0,  0 ,   0, ....    1]]

For concreteness, if N=2, then the matrix should be
[[1, c],
 [0, 1]]

And if N=3, then the matrix should be:

[[1, c, c^2],
 [0, 1,   c],
 [0, 0,   1]]

How can I do this?