第 N 个泰波那契数 (Easy)

发布时间 2023-06-13 16:46:20作者: zwyyy456

问题描述

1137. 第 N 个泰波那契数 (Easy)

泰波那契序列 T 定义如下:

T = 0, T = 1, T = 1, 且在 n >= 0 的条件下 T = T + T + T

给你整数 n,请返回第 n 个泰波那契数 T的值。

示例 1:

输入:n = 4
输出:4
解释:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4

示例 2:

输入:n = 25
输出:1389537

提示:

  • 0 <= n <= 37
  • 答案保证是一个 32 位整数,即 answer <= 2^31 - 1

解题思路

非常简单的动态规划

代码

class Solution {
public:
    int tribonacci(int n) {
        int num0 = 0, num1 = 1, num2 = 1;
        if (n == 0) {
            return num0;
        }
        if (n == 1) {
            return num1;
        }
        if (n == 2) {
            return num2;
        }
        for (int i = 2; i <= n; i++) {
            int tmp2 = num2;
            int tmp = num1;
            num2 += num0 + num1;
            num1 = tmp2;
            num0 = tmp;

        }
        return num1;
    }
};