C++ 五元数
c++server side programmingprogramming
五元数被描述为帕斯卡三角形中的第五个数字。现在,如您所知,它是第五个数字,因此这意味着我们需要在帕斯卡三角形中至少有五个数字,因此该系列的第一个数字从帕斯卡三角形的第四行1 4 6 4 1开始。因此,在本教程中,我们需要找到第 n 个五元组数,例如
输入:1 输出:1 输入:4 输出:35
您可以从下图中查看输出 −
现在对于这个问题,正如您所看到的,这是一种系列,因此我们尝试在解决方案中找出该系列的模式。
寻找解决方案的方法
在这个程序中,我们将找到该系列的通用公式,每个数字都遵循该公式。然后我们需要将我们的值放入公式中,然后我们得到输出。
示例
上述方法的 C++ 代码
#include<bits/stdc++.h> using namespace std; int answer(int n){ // 函数用于查找第 n 个五元组数的值 return (n * (n+1) * (n+2) * (n+3))/ 24; // 我们得出的公式 } int main(){ int n = 6; // 我们需要找到的五元组数 cout << answer(n) << "\n"; n = 4; cout << answer(n) << "\n"; return 0; }
输出
126 35
上述代码的总体复杂度为 O(1),这意味着它以恒定复杂度工作,这是我们可以实现的最佳时间复杂度,因为我们的时间不依赖于输入大小,因此我们可以同时计算任何输入的答案。
理解代码
在上述方法中,如您所知,我们试图找出该系列的模式,并试图从该模式中设计出一个通用公式。现在我们得出的公式是 (n * (n + 1) * (n + 2) * (n + 3)) / 24,其中 n 是我们需要找到的项。
结论
在本教程中,我们通过设计公式来解决寻找第 N 个五面体数的问题。我们还学习了这个问题的 C++ 程序和我们解决的完整方法。我们可以用其他语言(如 C、java、python 和其他语言)编写相同的程序。我们希望您觉得本教程有用。