Home  >  Article  >  Backend Development  >  In C++, Motzkin numbers

In C++, Motzkin numbers

WBOY
WBOYforward
2023-08-25 19:13:061377browse

In C++, Motzkin numbers

The Motzkin number series starts with 1, 1, 4, 9, etc.., We can get the generalised nth term with the sequence. The Motzkin number sequence is as follows.

a0 = 1

a1 = 1

a2 = 4

a3 = 9

an = ((2 * n 1)/ n 2) * M(n-1) ((3 * n - 3)/ n 2) * M(n - 2)

Algorithm

  • Initialise the number n.

  • Iterate till n.

    • Update the previous two numbers

  • Return the last number.

Example

Implementation

Following is the implementation of the above algorithm in C

#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

The above is the detailed content of In C++, Motzkin numbers. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete