中心十二面体数


题目要求对于任何正数N(用户输入),打印第N个中心十二面体数。

中心十二面体数是一种可以用特定图形模式表示的数。十二面体是数学中的一种三维图形,具有12个平面。中心十二面体数是一个可以用中心有一个点,周围环绕着连续的十二面体层(12个面的三维结构)的图形表示的数。连续的十二面体层意味着第一层将有12个面的三维结构围绕着中心的点,而进一步围绕着的是14个面的三维结构,以此类推。

中心十二面体数序列的前几个数是 **1, 33, 155, 427, 909**……

中心十二面体数序列中的每个数都可以表示为中心有一个点,周围环绕着连续的十二面体层。

在这个问题中,我们将得到一个正数N,我们的任务是打印与N值对应的第N个中心十二面体数。

示例 -

INPUT : N=2
OUTPUT : 33

**解释 -** 中心十二面体数序列中的第二个数是33,它表示为中心有一个点,周围环绕着一个十二面体。

INPUT : N=4
OUTPUT : 427

**解释 -** 427是中心十二面体数序列中遵循特定模式的第四个数。

同样,我们需要在这个问题中打印中心十二面体数序列的第N个数。让我们看看中心十二面体数序列中每个数之间的数学关系。

算法

有一个数学公式可以表示序列中的每个中心十二面体数。每个数在序列中都可以表示为中心有一个点,周围环绕着连续的十二面体层的方式,类似地,每个中心十二面体数都具有如下形式。

$\mathrm{(中心十二面体)_n=10(n−1)^3+15(n−1)^2+7(n−1)+1}$

其中,n = 从1开始的第N个中心十二面体数。

中心十二面体数序列中的每个数都可以用上述三次方程表示。假设我们想要第三个中心十二面体数,

所以将n=3代入方程,我们得到

$$\mathrm{= 10(3 − 1)^3 + 15(3 − 1)^2 + 7(3 − 1) + 1}$$

$$\mathrm{= 10*8 + 15*4 + 7*2 + 1}$$

$$\mathrm{= 80 + 60 + 14 + 1 = 155}$$

第三个中心十二面体数是155,我们可以通过将n=3代入三次方程得到。

因此,为了打印任何N值的第N个中心十二面体数,我们将在我们的方法中使用这个三次方程。

方法

下面提到了实现第N个中心十二面体数公式的步骤。

  • 我们将创建一个函数来获取第N个中心十二面体数。

  • 我们将创建一个long long int数据类型的变量来存储第N个中心十二面体数。long long int数据类型用于存储较大N值对应的中心十二面体数。

  • 将方程$\mathrm{10(N − 1)^3 + 15(N − 1)^2 + 7(N − 1) + 1}$的结果存储在变量中。

  • 返回存储在变量中的值,这将是期望的输出。

该方法的C++代码 -

示例

//C++ code to print the N-th centered dodecahedral number
#include <bits/stdc++.h>
using namespace std;

//function to calculate the N-th centered dodecahedral number
long long int CDn(int N){

   //to store the value of centered dodecahedral number corresponding to N   
   long long int num = 10*pow(N-1,3) + 15*pow(N-1,2) + 7*(N-1) + 1 ;
   return num; //return the N-th centered dodecahedral number
}
int main(){
   int N;
   N=9;
   cout<<"The Nth dodecahedral number is "<<CDn(N)<<endl; //calling the function 
   N=19;
   cout<<"The Nth dodecahedral number is "<<CDn(N)<<endl;
   return 0;
}

输出

The Nth dodecahedral number is 6137
The Nth dodecahedral number is 63307

**时间复杂度 -:O(1)**,我们花费恒定时间来计算第N个中心十二面体数。

**空间复杂度 - O(1)**,该方法没有占用额外的空间。

结论

本文讨论了中心十二面体数及其图形表示形式。我们还学习了第N个中心十二面体数的一般表达式,我们在方法中使用它以恒定时间和空间解决了这个问题。

我希望阅读本文后,您关于该主题的所有疑问都已解答。

更新于:2023年9月27日

浏览量:183

开启您的 职业生涯

完成课程获得认证

开始学习
广告