How would we evaluate this recursive definition using dynamic programming?

(a) A one dimensional table t of size n, to be filled from t[1] to t[n]

(b) A one dimensional table t of size n, to be filled from t[n] to t[1]

(c) A two dimensional table t of size n×n, to be filled row-wise from t[1][1] to t[n][n].

(d) A two dimensional table t of size n×n, to be filled row-wise from t[n][n] to t[1][1].