C++ 中的 Entringer 数
Entringer number 是一个特殊数字,它等于从 K+1 开始的 {1, 2, 3, … n+1} 的排列数,该数是通过交替递减和递增该值来更新的。
Entringer number 的值使用以下方法制定:
递推关系式:
E(n, k) = E(n, k-1) + E(n-1, n-k)
基值是:
E(0,0) = 1
E(n, 0) = 0
我们可以找到 Entringer number:
让我们举个例子来看一下值:
N = 5,k = 3
E(5, 3) = 14
程序来说明我们的解决方案的工作原理:
示例
#include <iostream>
using namespace std;
int EntringerNumber(int n, int k)
{
if (n == 0 && k == 0)
return 1;
if (k == 0)
return 0;
return EntringerNumber(n, k - 1) + EntringerNumber(n - 1, n - k);
}
int main() {
int n = 5, k = 3;
cout<<"The value of E("<<n<<", "<<k<<") = "<<EntringerNumber(n, k);
return 0;
}输出 −
The value of E(5, 3) = 14
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP