
卡特兰数(笔记)
本题可以直接打表卡特兰数,也可以直接公式求解,但是注意求组合数时s,x会爆,要及时约分。
发布日期:2021-05-07 03:06:27
浏览次数:34
分类:精选文章
本文共 935 字,大约阅读时间需要 3 分钟。
卡特兰数
1.前几项
1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343059613650, 1289904147324, 4861946401452,…
2.公式
h(0) = 1
h(1) = 1
-
h(n)= h(0)*h(n-1)+h(1)*h(n-2) + … + h(n-1)h(0) (n>=2)
-
h(n)=c(2n,n)-c(2n,n+1)(n=0,1,2,…)
-
h(n)=C(2n,n)/(n+1)
3.应用
-
进出栈的总序列个数问题
假设k是最后一个出栈的数。比k早进栈且早出栈的有k-1个数,一共有h(k-1)种方案。比k晚进栈且早出栈的有n-k个数,一共有h(n-k)种方案。所以一共有h(k-1)h(n-k)种方案。k取不同值时,产生的出栈序列是相互独立的,所以结果可以累加。
*k的取值范围为1至n,所以结果就为h(n)= h(0)*h(n-1)+h(1)*h(n-2) + … + h(n-1)h(0)。

#includeusing namespace std;typedef long long ll;ll C(ll n,ll m){ ll s = 1,x = 1; ll ans = 0; for(int i=0;i >n; cout<
-
括号匹配匹配方式
2*n个括号,必须是n个左括号,n个右括号,这样才能匹配。求有多少种匹配方式?
假设n=2,只有()(),(())两种,答案就是卡特兰数
-
二叉树的个数
给定n个节点,求能构成二叉树的个数
-
凸多边形的划分方案数
凸多边形的三角形划分,一个凸的n边形,用直线连接它的两个顶点使之分成多个三角形,每条直线不能相交,求划分的方案数
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月07日 13时26分32秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
程序员视角:鹿晗公布恋情是如何把微博搞炸的?
2019-03-06
【JavaScript】动态原型模式创建对象 ||为何不能用字面量创建原型对象?
2019-03-06
Linux应用-线程操作
2019-03-06
多态体验,和探索爷爷类指针的多态性
2019-03-06
系统编程-进程间通信-无名管道
2019-03-06
记2020年初对SimpleGUI源码的阅读成果
2019-03-06
C语言实现面向对象方法学的GLib、GObject-初体验
2019-03-06
系统编程-进程-ps命令、进程调度、优先级翻转、进程状态
2019-03-06
为什么我觉得需要熟悉vim使用,难道仅仅是为了耍酷?
2019-03-06
一个支持高网络吞吐量、基于机器性能评分的TCP负载均衡器gobalan
2019-03-06
HDOJ2017_字符串统计
2019-03-06
高等软工第二次作业《需求分析阶段总结》
2019-03-06
404 Note Found 团队会议纪要
2019-03-06
CentOS安装Docker-ce并配置国内镜像
2019-03-06
使用JWT作为Spring Security OAuth2的token存储
2019-03-06
使用Redis作为Spring Security OAuth2的token存储
2019-03-06
【SOLVED】Linux使用sudo到出现输入密码提示延迟时间长
2019-03-06