卡特兰数学习笔记

news/2025/2/21 7:02:06/文章来源:https://www.cnblogs.com/vanueber/p/18716116

引入

\((0,0)\) 走到 \((n,n)\),求不越过 \(y=x\) 的方案数。

不考虑是否合法的方案数是 \(\binom{2n}{n}\),即从 \(2n\) 个移动中选 \(n\) 个向右的。

接下来考虑不合法的情况,不合法当且仅当碰到了 \(y=x+1\) 这条直线,设这个点是 \((p,p+1)\),将后面的折线沿着 \(y=x+1\) 翻折。

t

从图中不难看出,不合法路径的终点翻折后变成了 \((n-1,n+1)\),因为这是 \(A\) 的对称点。于是所有不合法的路径数量就是从 \((0,0)\) 走到 \((n-1,n+1)\) 的方案数,因为二者是一一对应关系。

最终的答案就成了 \(\binom{2n}{n} - \binom{2n}{n+1}\)

卡特兰数

上个例子的答案就是卡特兰数的定义。OEIS 上的 卡特兰数。

接下来介绍卡特兰数的其他形式

1

\[H_n = \binom{2n}{n} - \binom{2n}{n+1} \]

2

\[H_n = \frac{\binom{2n}{n}}{n+1} \]

3

\[H_n = \sum_{i=1}^{n} H_{i-1} H_{n-i} \]

特别地有 \(H_0 = H_1 = 1\)

从网格问题证明:

枚举第一次到达 \(y=x\) 的点 \((i,i)\),其中 \(1 \le i \le n\)

那么前一半的方案数等价于 \((1,0)\)\((i,i-1)\),且不经过 \(y=x-1\) 的方案数,就是 \(H_{i-1}\)

后一半是 \(H_{n-i}\),那么由乘法原理一个 \(i\) 的贡献就是 \(H_{i-1} H_{n-i}\)

4

\[H_n = \frac{H_n (4n-2) }{n+1} \]

经典问题

网格行走问题

\((0,0)\)\((n,n)\) 且不经过 \(y=x\) 的方案数为 \(H_n\)

\((0,0)\)\((n,m)\) 且不经过 \(y=x\) 的方案数为 \(\binom{n+m}{n} - \binom{n+m}{m-1}\)

如下图:

每一条不合法的路径都可以转化为一条 \((0,0)\)\((m-1,n+1)\) 的路径

P1641 [SCOI2010] 生成字符串

加入一个 \(1\) 看成向右走,加入一个 \(0\) 看成向下走,就是上述问题。

出栈方案数问题

P1044 [NOIP 2003 普及组] 栈

将进栈看成向右,出栈看成向上即可。

二叉树总数

\(k\) 个节点可构造出二叉树总数是 \(H_k\)

证明:枚举 \(i\),左端点数 \(i-1\),右端点数 \(n-i\),成了两个子问题 \(H_{i-1},H_{n-i}\),发现公式与卡特兰数是相同的。

阶梯划分问题

P2532 [AHOI2012] 树屋阶梯

1

考虑 \(f_i\) 表示 \(i\) 阶阶梯划分数量,考虑一个矩形 \((0,0)\) 划分到横坐标为 \(i\) 的点,剩下的就是 \(i-1\)\(n-i\) 的子问题,正好符合卡特兰数的公式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/883906.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud自定义loadbalancer实现标签路由

一、背景最近前端反应开发环境有时候调接口会很慢,原因是有开发图方便将本地服务注册到开发环境,请求路由到开发本地导致, 为了解决该问题想到可以通过标签路由的方式避免该问题,实现前端联调和开发自测互不干扰。该方案除了用于本地调试,还可以用于用户灰度发布。 二、实…

2025.2.14鲜花

ln将卷积转为加法。推歌 (看fengwu博客时候看见的) 《堕》 星河挂在天上 保护璀璨月亮 而你在我心中宛如月光 为你痴为你狂 为你笑为你闯 为你悲为你伤 为你扬 她是踏碎星河落入我梦境的幻想 环遍星系为你寻找的力量 神明给我在最难熬的时光 留下唯一的星光 堕入日月星辉之中…

解密prompt系列48. DeepSeek R1 Kimi 1.5长思维链 - RL Scaling

春节前DeepSeek R1和Kimi1.5炸翻天了,之前大家推测的O1的实现路径,多数都集中在MCTS推理优化,以及STaR等样本自优化方案等等,结果DeepSeek和Kiim直接出手揭示了reasoning的新路线不一定在SFT和Inference Scaling,也可以在RL。也算是Post Train阶段新的Scaling方向,几个核…

求勾股数

基本概念 众所周知(3,4,5)和(6,8,10)是两组勾股数,区别是前一组三个数的公因数是一而后一组的不是。像第一组勾股数一样三个数之间两两互质的就叫做 本原勾股数。而且将一组本原勾股数里的三个数同时扩大相同的倍数得到的一组数还是勾股数(只不过不是本原勾股数)。所…

腾讯元宝接入 DeepSeek R1 模型,支持深度思考 + 联网搜索,好用不卡机!

前言 腾讯元宝AI产品于2025年2月13日在应用商店发布更新,正式接入了DeepSeek R1模型,并宣布该模型已联网、满血上线,DeepSeek+腾讯混元,好用不卡机。腾讯元宝介绍 腾讯元宝是依托于腾讯混元、DeepSeek等大模型,基于跨知识领域和自然语言理解能力的大模型AI产品。元宝期望通…

QFileSystemWatcher+QTableView监控目录下文件变化

目标监控目录下的指定类型的文件,显示文件的序号、名称以及大小。 目录下的文件变化时(删除文件,新增文件后),程序界面可以实时显示目录下的状态。效果图监控目录下的 .h 文件完整源码 #include <QApplication> #include <QTableView> #include <QFileSyst…

服务器安装Nginx

环境CentOS 8 使用编译安装 NginxNginx使用Docker安装确实有点麻烦,需要将很多前端文件映射到容器内部,不推荐 正式环境 1、安装环境需要的依赖包 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel2、在你的linux服务器上创建目录:nginx cd /root &…

WPF的DataGrid简单使用

简单做个记录。有时候会忘记某个样式怎么调整; 首先写一个DataGrid,AlternatingRowBackground表示隔行更改背景色;AlternationCount表示隔的行数;:1 <DataGrid Grid.Row="1" 2 AlternatingRowBackground="Snow" 3 Alternation…

报名丨Computer useVoice Agent :使用 TEN 搭建你的 Mac Assistant

与 TEN 相聚在「LET’S VISION 2025」大会,欢迎来展位上跟我们交流。这次我们还准备了一场聚焦「computer use」的工作坊,功能新鲜上线,线下首波体验!📅 TEN 展位:2025年3月1日-2日TEN workshop:2025年3月2日 13:30开始📍 上海浦东鲜花港TEN Framework 是一个主流对话…

本地AI搭建

搭建本地博客AI 目录搭建本地博客AI环境下载ollama选择模型选择embedding模型查看性能测试选择合适的嵌入模型(Embedder)估算内存选择模型量化类型介绍Q5_0 vs Q5_KQ5_K 变体(Q5_K_S、Q5_K_M、Q5_K_L)选择LLM模型下载模型下载LLM下载Embedder下载AnythingLLM配置向量数据库测试…

无需编码5分钟免费部署云上调用满血版DeepSeek

大家好,我是 V 哥。如何自己部署DeepSeek调用满血版。首先,如果你遇到了使用公共服务器时的延迟或限制,想要本地部署以获得更好的性能和稳定性。你是不是也想自己来部署DeepSeek呢,其实除了自己部署本地DeepSeek,还可以在云上免费部署满血版DeepSeek,接下来,V 哥来介绍这…

svm(support vector machine)之svr(support vector regression)学习笔记(?)

1.SVR和SVC的区分:SVR:构建函数拟合数据;SVC:二向数据点的划分(分类)注:SVR的是输入时给出的实际值 \(y_{i}\),SVC的 \(y_{i}\)是输入时给出的类别,即+1,-1。 2.SVR的目的:找到一个函数\(f(x)\),使之与训练数据给出的实际目标\(y_{i}\) 的偏差几乎不超过\(ε\),同时…