C++ 中的第 N 個 Tribonacci 數


假設我們有一個值 n,我們必須生成第 n 個三階斐波納契數。三階斐波納契數與斐波納契數類似,但我們透過新增前三個數來生成一個數。假設我們要生成 T(n),那麼公式將如下所示 −

T(n) = T(n - 1) + T(n - 2) + T(n - 3)

前幾個數從 {0, 1, 1} 開始

我們可以透過以下演算法解決它們 −

演算法

• first := 0, second := 1, third := 1
• for i in range n – 3, do
   o next := first + second + third
   o first := second, second := third, third := next
• return third

示例 (C++)

 即時演示

#include<iostream>
using namespace std;
long tribonacci_gen(int n){
   //function to generate n tetranacci numbers
   int first = 0, second = 1, third = 1;
   for(int i = 0; i < n - 3; i++){
      int next = first + second + third;
      first = second;
      second = third;
      third = next;
   }
   return third;
}
main(){
   cout << "15th Tribonacci Term: " << tribonacci_gen(15);
}

輸入

15

輸出

15th Tribonacci Term: 1705

更新時間: 2020-04-28

332 次瀏覽

開啟你的職業生涯

完成課程即可獲得認證

開始學習
廣告
© . All rights reserved.