題目

The Tribonacci sequence Tn is defined as follows:

T0 = 0, T1 = 1, T2 = 1, and Tn+3 = Tn + Tn+1 + Tn+2 for n >= 0.

Given n, return the value of Tn.

Example 1:

Input: n = 4
Output: 4
Explanation:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4

Example 2:

Input: n = 25
Output: 1389537

Constraints:

  • 0 <= n <= 37
  • The answer is guaranteed to fit within a 32-bit integer, ie. answer <= 2^31 - 1.

題目大意

泰波那契序列 Tn 定義如下:

T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的條件下 Tn+3 = Tn + Tn+1 + Tn+2

給你整數 n,請返回第 n 個泰波那契數 Tn 的值。

提示:

  • 0 <= n <= 37
  • 答案保證是一個 32 位整數,即 answer <= 2^31 - 1。

解題思路

  • 求泰波那契數列中的第 n 個數。
  • 簡單題,按照題意定義計算即可。 可。

參考代碼

package leetcode

func tribonacci(n int) int {
	if n < 2 {
		return n
	}
	trib, prev, prev2 := 1, 1, 0
	for n > 2 {
		trib, prev, prev2 = trib+prev+prev2, trib, prev
		n--
	}
	return trib
}