题目链接:传送门
分析:这一个是关于卡特兰数数的应用,这里有一篇关于卡特兰数的应用汇总“快点我”,里面把许多卡特兰数的情况基本都汇总了一遍,以及公式的基本介绍。
而本题的棋盘问题便是卡特兰数应用的一种
AC代码:
#include<iostream> using namespace std; int main(){ long long h[100]={0},n,num=0; h[0]=1; h[1]=1; for(int i=2;i<=35;i++) for(int j=0;j<=i-1;j++){ h[i]+=h[j]*h[i-1-j]; } while(cin>>n&&n!=-1){ num++; cout<<num<<" "<<n<<" "<<h[n]*2<<endl; } }
讯享网
小结:该题目的原型其实可以说是1–n的出栈顺序问题,固直接套卡特兰数便可以了。。。(要熟记卡特兰数的应用?)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/65715.html