1137.第N个泰波那契数
题目描述
泰波那契序列Tn定义如下:
T0 = 0,T1 = 1,T2 = 1,且在n>=0的条件下Tn+3 = Tn + Tn+1 + Tn+2
给你整数n,请返回第n个泰波那契数Tn的值。
示例1:
输入
n = 4
输出
4
解释
T3 = 0 + 1 + 1 = 2
T4 = 1 + 1 + 2 = 4
示例2
输入
n = 25
输出
1389537
提示
- 0 <= n <= 37
- 答案保证是一个小于32位的整数,即answer <= 231 - 1。
思路:动态规划
Python代码
class Solution:
def tribonacci(self, n: int) -> int:
# 动态规划
arr = [0, 1, 1]
if n < 3:
return arr[n]
for i in range(3, n+1):
arr.append(arr[i-1]+arr[i-2]+arr[i-3])
return arr[n]