DP-1137. 第 N 个泰波那契数

2022-02-25 09:07:30 浏览数 (1)

思路

斐波那契数列的扩展版,具体看上一题

时间复杂度:O(n)

空间复杂度:O(1)

代码

代码语言:javascript复制
class Solution {
public:
    int tribonacci(int n) {
        if (n == 0) {
            return 0;
        } else if (n == 1) {
            return 1;
        } else if (n == 2) {
            return 1;
        }
        int a = 0;
        int b = 1;
        int c = 1;
        int d = 0;
        n -= 2; // n是从0开始的  如果从1开始 n-=3
        while (n--) {
            d = a   b   c;
            a = b;
            b = c;
            c = d;
        }
        return d;
    }
};
dp

0 人点赞