程序在C ++中找到系列1,2,11,12,21…的第N个术语

在本教程中,我们将讨论一个程序来查找系列1、2、11、12、21的第N个术语。

为此,我们将提供一个号码。我们的任务是在特定位置找到给定系列的术语。

示例

#include <bits/stdc++.h>
using namespace std;
//找到系列的第n个项
int printNthElement(int N){
   //创建数组
   int arr[N + 1];
   arr[1] = 1;
   arr[2] = 2;
   for (int i = 3; i <= N; i++) {
      if (i % 2 != 0) {
         arr[i] = arr[i / 2] * 10 + 1;
      } else {
         arr[i] = arr[(i / 2) - 1] * 10 + 2;
      }
   }
   return arr[N];
}
int main(){
   int N = 5;
   cout << printNthElement(N);
   return 0;
}

输出结果

21
猜你喜欢