您的位置:首页 > 其它

卡特兰数

2013-08-25 14:14 253 查看
/**
* 组合公式
* */
#include <iostream>
using namespace std;
//阶乘公式
unsigned long long factorial(unsigned int n)
{
if(n==0 || n==1)
return 1;
return n*factorial(n-1);
}
//排列公式P(n,r)=n!/r!
unsigned long long permutation(unsigned int n,unsigned int r)
{
if(n<r)
return 0;
return factorial(n)/factorial(r);
}
//组合公式
unsigned long long combination(unsigned int n,unsigned int r)
{
return permutation(n,r)/factorial(r);
}
//卡特兰数
unsigned long long catalan(int n)
{
return combination(n*2,n)/(n+1);
}
int main(int argc,char* argv[])
{
cout<<catalan(4)<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: