Tribonacci Number
Top Down intuition
dp to store the value of computed tribonacci numbers, initialized with the base cases dp[0] = 0, dp[1] = 1, dp[2] = 1.dfs(i) be the value of ithi is in dp, return dp[i].dfs(i - 1) + dfs(i - 2) + dfs(i - 3) and set dp[i] = answer. Then return answer.dfs(n).Tribonnaci Top Down Aproach
Code
def tribonacci(n: int) -> int:
dp = {0: 0, 1: 1, 2: 1}
def dfs(i):
if i in dp:
return dp[i]
dp[i] = dfs(i - 1) + dfs(i - 2) + dfs(i - 3)
return dp[i]
return dfs(n)