1137.第n個泰波那契數
阿新 • • 發佈:2021-10-15
泰波那契序列Tn定義如下:
T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0的條件下 Tn+3 = Tn + Tn+1 + Tn+2
給你整數n,請返回第 n 個泰波那契數Tn 的值。
示例 1:
輸入:n = 4
輸出:4
解釋:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4
示例 2:
輸入:n = 25
輸出:1389537
來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/n-th-tribonacci-number
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。
class Solution: @functools.lru_cache()#在 python3 中,可以使用語言自帶的「記憶化搜尋」的註解:@functools.lru_cache(),
#它的用法只有一行,即在要執行記憶化的函式上面加上一行註解,即可在語言級別的自動化的記憶化遞迴。
#1.注意是在python3中使用,2.不加此語句會報超時 def tribonacci(self, n: int) -> int: if n<2: return n if n==2: return 1 return self.tribonacci(n-1)+self.tribonacci(n-2)+self.tribonacci(n-3)
class Solution(object): def tribonacci(self, n): """ :type n: int :rtype: int """ T=[0]*100 T[0]=0 T[1]=1 T[2]=1 for i in range(3,n+1): T[i]=T[i-1]+T[i-2]+T[i-3] return T[n]