Motzkin數列以1、1、4、9等開頭,我們可以透過該數列得到廣義的第n項。 Motzkin 數列如下:
##a0 = 1
a1 = 1#a
2= 4 a
3= 9a
n= ((2 * n 1)/ n 2) * M(n -1) ((3 * n - 3)/ n 2) * M(n - 2)演算法
##初始化數字#迭代直到
##更新前兩個數字
#include <bits/stdc++.h> using namespace std; int getNthTerm(int n) { if(n == 0 || n == 1) { return 1; } int a = 1, b = 1; for(int i = 2; i <= n; ++i) { int c = ((2 * i + 1) * b + (3 * i - 3) * a) / (i + 2); a = b; b = c; } return b; } int main() { int n = 5; cout << getNthTerm(n) << endl; return 0; }
21
以上是在C++中,Motzkin數的詳細內容。更多資訊請關注PHP中文網其他相關文章!