Catlan--卡特兰数--组合数学
卡特兰数 \(Catlan\)
·赘述
其实发现卡特兰数和之前不同的是,前面的是给你公式,让你去求具体的例子,然而卡特兰数这里是给你大量例子来给你证明和解释什么是卡特兰数。
·定义
对于卡特兰数来说,他只是一个数列 \(Cat\)
\]
这里举一个例子来观察一下卡特兰数:
现在给你一个 \(( n + 1 ) \times ( n + 1 )\) 的矩阵,现在从底点 \(( 0 , 0 )\) 出发,可以向上或向右走一格,并且到达的点的纵坐标不大于横坐标,问最后到达 \(( n , n )\) 的走法种数。
可以发现对于每一个走到的点,其一定不会越过直线 \(y = x + 1\)
我们将终点关于直线对称得到 \(( n - 1 , n + 1 )\)
对于每一个从原点出发的点,到达新终点的话,一定会经过这条直线。那么将路径与直线的第一个交点之后的关于直线对称回来,得到了一条不符合题意,且终点不变的直线。
我们能发现,对于每一条不符合题意的路径(必须向右和向上,不符合指的是纵坐标不大于横坐标不成立)都能对称出如上的路径。
所以:不考虑纵坐标不大于横坐标的总方案数为:
\]
在 \(2n\) 次移动里有 \(n\) 次向上。
不符合纵坐标不大于横坐标的方案数为:
\]
在 \(2n\) 次移动里 \(n - 1\) 次向右。
所以答案为:
\]
· \(Catlan\) 数的一些变形
这里指的是式子。
首先可以由已知式推出的:
\]
\]
然后后面有可以由例子证明的:
\]
\(\dots\) timida , 放不出来图不好解释啊。
考虑到点 \(( i , i )\) 时 ,再往上的 \(( i + j , i + j )\) 都会被 \(( i , i )\) 开始跑时跑到。所以会有重。为了去重,到 \(( i , i )\) 再往后我们就一直往右跳,再一直往左跳。
( ... 不明白不要看了 )
·卡特兰数的一些题型变形
·01串
给定 \(n\) 个 \(0\) 和 \(n\) 个 \(1\) ,排成长度为 \(2n\) 的 \(01\) 串,使得对于任意一个前缀中 \(0\) 的个数 \(\ge 1\) 的个数 ,求排法数。
其实将这个变个型就变成上面的题。( \(0\) 为向右走 , \(1\) 为向上走 )
·括号匹配
\(n\) 个 ( 和 \(n\) 个 ) , 求能够成功匹配的方案数 。 \(eg.()()(())()\)
·出入栈
给定 \(n\) 个元素,按照一定顺序入栈,求其出栈的方案数。
将入栈的补全时,就成为和括号一种的东西了。
结尾撒花 \(\color{pink}{✿✿ヽ(°▽°)ノ✿}\)
Catlan--卡特兰数--组合数学的更多相关文章
- uva 1478 - Delta Wave(递推+大数+卡特兰数+组合数学)
option=com_onlinejudge&Itemid=8&category=471&page=show_problem&problem=4224" st ...
- Train Problem II(卡特兰数 组合数学)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1023 Train Problem II Time Limit: 2000/1000 MS (Java/ ...
- hdu5673 Robot 卡特兰数+组合数学+线性筛逆元
Robot Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- CodeForces - 896D :Nephren Runs a Cinema(卡特兰数&组合数学---比较综合的一道题)
Lakhesh loves to make movies, so Nephren helps her run a cinema. We may call it No. 68 Cinema. Howev ...
- BZOJ1856:[SCOI2010]字符串(卡特兰数,组合数学)
Description lxhgww最近接到了一个生成字符串的任务,任务需要他把n个1和m个0组成字符串,但是任务还要求在组成的字符串中,在任意的前k个字符中,1的个数不能少于0的个数.现在lxhgw ...
- CodeForces - 1204E Natasha, Sasha and the Prefix Sums (组合数学,卡特兰数扩展)
题意:求n个1,m个-1组成的所有序列中,最大前缀之和. 首先引出这样一个问题:使用n个左括号和m个右括号,组成的合法的括号匹配(每个右括号都有对应的左括号和它匹配)的数目是多少? 1.当n=m时,显 ...
- 组合数学的卡特兰数 TOJ 3551: Game of Connections
这个就是卡特兰数的经典问题 直接用这个公式就好了,但是这个题涉及大数的处理h(n)=h(n-1)*(4*n-2)/(n+1) 其实见过好几次大数的处理了,有一次他存的恰好不多于30位,直接分成两部分l ...
- [luogu1485 HNOI2009] 有趣的数列 (组合数学 卡特兰数)
传送门 Solution 卡特兰数 排队问题的简单变化 答案为\(C_{2n}^n \pmod p\) 由于没有逆元,只好用分解质因数,易证可以整除 Code //By Menteur_Hxy #in ...
- 卡特兰数(Catalan)
卡特兰数又称卡塔兰数,英文名Catalan number,是组合数学中一个常出现在各种计数问题中出现的数列.由以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名,其前几项为 : 1, 2, ...
- 卡特兰数(Catalan Number) 算法、数论 组合~
Catalan number,卡特兰数又称卡塔兰数,是组合数学中一个常出现在各种计数问题中出现的数列.以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名. 卡特兰数的前几个数 前20项为( ...
随机推荐
- 【Error】mysql的error.log中ranges: 268 max_threads: 4 split: 268 depth: 2是什么意思?
2021-12-08T09:36:39.612332+08:00 44213799 [Note] [MY-011825] [InnoDB] Parallel scan: 4 2021-12-08T09 ...
- joig2022_e 题解
设计 \(f_i\) 表示以第 \(i\) 个数结尾的选择的最大值. 有 \(f_i = f_j + a_i\)(\(type_i \not = type_j\)). 发现可以选择的种类其实构成两段连 ...
- PO、VO、BO、DTO、POJO、DAO、DO
DO: domain object持久对象就是从现实世界中抽象出来的有形或无形的业务实体. PO:persistant object持久对象最形象的理解就是一个PO就是数据库中的一条记录.好处是可以把 ...
- VS Code 开发统一代码格式化配置
eslint: 是用来做代码风格检查的,比较关注代码质量,并且会提示不符合风格规范的代码,也有一部分代码格式化的功能.不是消除空行. "editor.formatOnSave": ...
- oeasy教您玩转vim - 61- # 编辑过程
编辑过程 回忆上次 vi可以加各种参数 vi +4 oeasy.txt vi +/shiyanlou vi +%s/shiyanlou/oeasy/g oeasy.txt vi可以接收stdin的 ...
- 强烈推荐:18.3k star,推荐一款简单易用的HTTP请求流量录制回放工具:Goreplay
在软件开发和测试过程中,我们经常需要对应用程序的网络请求进行录制和回放,以便进行性能分析.压力测试或者模拟复杂的网络环境.今天,我要向大家推荐一款简单易用的 HTTP 请求流量录制回放工具:Gorep ...
- JavaScript一天一个算法题~持续更新中。。。。。
1,数组去重 i.暴力去重 思路:建一个空数组,通过判断原数组的元素是否在空数组内,如果在,不放入,不在,放入空数组. function clearCommnetArray(array){ let a ...
- vue小知识~eventBus
eventBus是指在向全区暴露这个vue对象,此时在任意一个地方都可以使用vue相关的实例 在main.js配置 Vue.prototype.$bus=new Vue() 此时整个应用都可以使用vu ...
- Odoo 基于Win10搭建基于Win10搭建odoo14开发环境搭建
实践环境 win10 Python 3.6.2 odoo_14.0.latest.tar.gz 下载地址: https://download.odoocdn.com/download/14/src?p ...
- gitbook 入门教程之比较代码块差异 diff 插件
在 markdown 文档中显示代码之间的差异的 Gitbook 插件 English | 中文 主页 Github : https://snowdreams1006.github.io/gitboo ...