铁路进行列车调度时,常把站台设计成栈式结构的站台,试问:
设有编号为1到n的n辆列车,顺序开入栈式结构的站台,则可能的出栈序列有多少种?
输入
输入包含多组测试数据。每组为一个正整数n(1<=n<=20),表示有n辆列车。
输出
输出可能的出栈序列有多少种。
样例输入
4
3
样例输出
14
5
利用卡特兰函数,并用那个公式进行化简
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
long long n;
while(cin>>n)
{
long long i,ans,j=1;
ans=1*pow(2,(n+1)/2);
for(i=2*n-1;i>n;i-=2)
ans=ans*i/j++;
cout<<ans/(n+1)<<endl;
}
return 0;
}