# 方法

1. 生成函数；拉格朗日反演公式 ；residue calcus
2. 一一映射
3. reflection principle
4. cycle lemma
5. 转移函数方法
6. 核方法
7. the path switching involution for non-intersecting lattice paths
8. manipulation of two-rowed arrays for turn enumeration
9. 正交多项式；连分数

# 10.2 Lattice paths without restrictions 无限制格子路径

### 2维的例子，从(a,b)到(c,d)，允许(0,1)和(1,0)

$|L((a, b) \rightarrow(c, d))|=\left(\begin{array}{c} c+d-a-b \\ c-a \end{array}\right)$

### n维的例子，从$$\mathbf{a}$$到$$\mathbf{e}$$,每次允许一个维度+1

$|L(\mathbf{a} \rightarrow \mathbf{e})|=\left(\begin{array}{c} \sum_{i=1}^{d}\left(e_{i}-a_{i}\right) \\ e_{1}-a_{1}, e_{2}-a_{2}, \ldots, e_{d}-a_{d} \end{array}\right):=\frac{\left(\sum_{i=1}^{d}\left(e_{i}-a_{i}\right)\right) !}{\left(e_{1}-a_{1}\right) !\left(e_{2}-a_{2}\right) ! \cdots\left(e_{d}-a_{d}\right) !}$

### 2维的例子，从(a,b)到(c,d)，允许$$(0,\pm1)$$和$$(\pm1,0)$$,走n个steps

$\left|L_{n}((a, b) \rightarrow(c, d) ;\{(\pm 1,0),(0,\pm 1)\})\right|=\left(\begin{array}{c} n \\ \frac{n+c+d-a-b}{2} \end{array}\right)\left(\begin{array}{c} n \\ \frac{n+c-d-a+b}{2} \end{array}\right)$

### 2维的例子，从(a,b)到(c,d)，允许(0,1)和(1,0)和(1,1)

$|L((a, b) \rightarrow(c, d) ;{(1,0),(0,1),(1,1)}|=\sum_{k=0}^{c-a}\left(\begin{array}{c} c+d-a-b-k \\ k, c-a-k, d-b-k \end{array}\right)$

### 一个带权重计数，联系了格子路径计数和整数分拆

$G F\left(L((a, b) \rightarrow(c, d)) ; q^{a(.)}\right)=q^{b(c-a)}\left[\begin{array}{c} c+d-a-b \\ c-a \end{array}\right]_{q}$

$q^4+q^3+q^1+q^0+q^2+q^2=\left[\begin{array}{c} 4 \\ 2 \end{array}\right]_{q}=\frac{\left(1-q^{4}\right)\left(1-q^{3}\right)}{(1-q)\left(1-q^{2}\right)}=\left(1+q^{2}\right)\left(1+q+q^{2}\right)=1+q+2 q^{2}+q^{3}+q^{4}$

# 10.3 Linear boundaries of slope 1

### Theorem 10.3.1 在y=x对角线下

$|L((a, b) \rightarrow(c, d) \mid x \geq y)|=\left(\begin{array}{c} c+d-a-b \\ c-a \end{array}\right)-\left(\begin{array}{c} c+d-a-b \\ c-b+1 \end{array}\right)$

ballot problem

$|L((0,0) \rightarrow(c, d) \mid x \geq y)|=\frac{c+1-d}{c+d+1}\left(\begin{array}{c} c+d+1 \\ d \end{array}\right) \ where \ c\geq d$

$|L((0,0) \rightarrow(n, n) \mid x \geq y)|=\frac{1}{n+1}\left(\begin{array}{c} 2 n \\ n \end{array}\right)$

### Theorem 10.3.3 在两条斜率1的对角线之间

$\begin{array}{l} |L((a, b) \rightarrow(c, d) \mid x+t \geq y \geq x+s)| \\ \quad=\sum_{k \in \mathbb{Z}}\left(\left(\begin{array}{c} c+d-a-b \\ c-a-k(t-s+2) \end{array}\right)-\left(\begin{array}{c} c+d-a-b \\ c-b-k(t-s+2)+t+1 \end{array}\right)\right) \end{array}$

$\begin{array}{c} |L((a, b) \rightarrow(c, d) \mid x+t \geq y \geq x+s)| \\ =\sum\limits_{k=1}^{\lfloor(t-s+1) / 2\rfloor}\frac{4}{t-s+2}\left(2 \cos \frac{\pi k}{t-s+2}\right)^{c+d-a-b} \cdot \sin \left(\frac{\pi k(a-b+t+1)}{t-s+2}\right) \cdot \sin \left(\frac{\pi k(c-d+t+1)}{t-s+2}\right) \end{array}$

# 10.4 Simple paths with linear boundaries of rational slope,部分一

### Theorem 10.4.1 rational Catalan number

$|L((0,0) \rightarrow(r, s) \mid s x \geq r y)|=\frac{1}{r+s}\left(\begin{array}{c} r+s \\ r,s \end{array}\right)$

### Theorem 10.4.5

$|L((0,0) \rightarrow(c, d) \mid x \geq \mu y)|=\frac{c-\mu d+1}{c+d+1}\left(\begin{array}{c} c+d+1 \\ d \end{array}\right)$

picewise 分段的，逐段的

# 10.7 Simple paths with general boundaries

### Theorem 10.7.1

$\left|L\left(\left(0, b_{1}\right) \rightarrow\left(n, a_{n}\right) \mid \mathbf{a} \geq \mathbf{y} \geq \mathbf{b}\right)\right|=\operatorname{det}_{1 \leq i, j \leq n}\left(\left(\begin{array}{c} a_{i}-b_{j}+1 \\ j-i+1 \end{array}\right)\right)$

# 10.8 Elementary results on Motzkin and Schröder paths

### 一些著名paths

Motzkin paths 允许(1,1),(1,-1),(1,0) 不会到x轴下方

Schröder paths 允许(1,1),(1,-1),(2,0) 不会到x轴下方

Catalan paths 允许(1,1),(1,-1) 不会到x轴下方

Dyck paths 上面的3种只要出发点和终点都在x轴上，就叫做Dyck paths

### Theorem 10.8.1

Motzkin paths enumeration

$\begin{array}{l} L((a, b) \rightarrow(c, d) ; M \mid y \geq 0) \mid \\ \quad=\sum_{k=0}^{c-a}\left(\begin{array}{c} c-a \\ k \end{array}\right)\left(\left(\begin{array}{c} c-a-k \\ (c+d-k-a-b) / 2 \end{array}\right)-\left(\begin{array}{c} c-a-k \\ (c+d-k-a+b+2) / 2 \end{array}\right)\right) \end{array}$

Schröder paths enumeration

$\begin{array}{c} |L((a, b) \rightarrow(c, d) ; S \mid y \geq 0)|=\sum_{k=0}^{(c-a) / 2}\left(\begin{array}{c} c-a-k \\ k \end{array}\right) \\ \cdot\left(\left(\begin{array}{c} c-a-2 k \\ (c+d-2 k-a-b) / 2 \end{array}\right)-\left(\begin{array}{c} c-a-2 k \\ (c+d-2 k-a+b+2) / 2 \end{array}\right)\right) \end{array}$

### Corollary 10.8.2

$|L((0,0) \rightarrow(n, 0) ; M \mid y \geq 0)|=\sum_{k=0}^{\lfloor n / 2\rfloor}\left(\begin{array}{c} n \\ 2 k \end{array}\right) \frac{1}{k+1}\left(\begin{array}{c} 2 k \\ k \end{array}\right)$

$|L((0,0) \rightarrow(n, 0) ; S \mid y \geq 0)|=\sum_{k=0}^{n / 2}\left(\begin{array}{c} n / 2+k \\ 2 k \end{array}\right) \frac{1}{k+1}\left(\begin{array}{c} 2 k \\ k \end{array}\right)$

# 10.9 A continued fraction for the weighted counting of Motzkin paths

up-step的权重是$$1$$,level step at height $$h$$的权重是$$b_h$$,down step from height $$h$$ to height $$h-1$$的权重是$$\lambda_h$$

# 10.20 Self-avoiding walks

## 【读书笔记】格子路径计数LatticePathEnumeration 学一半的笔记的更多相关文章

1. 牛客网 暑期ACM多校训练营（第一场）A.Monotonic Matrix-矩阵转化为格子路径的非降路径计数，Lindström-Gessel-Viennot引理-组合数学

牛客网暑期ACM多校训练营(第一场) A.Monotonic Matrix 这个题就是给你一个n*m的矩阵,往里面填{0,1,2}这三种数,要求是Ai,j⩽Ai+1,j,Ai,j⩽Ai,j+1 ,问你 ...

2. 跟着鸟哥学Linux系列笔记3-第11章BASH学习

跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...

3. 【DG】[三思笔记]一步一步学DataGuard

[DG][三思笔记]一步一步学DataGuard 它有无数个名字,有人叫它dg,有人叫它数据卫士,有人叫它data guard,在oracle的各项特性中它有着举足轻理的地位,它就是(掌声)..... ...

4. 堆优化Dijkstra计算最短路+路径计数

今天考试的时候遇到了一道题需要路径计数,然而蒟蒻从来没有做过,所以在考场上真的一脸懵逼.然后出题人NaVi_Awson说明天考试还会卡SPFA,吓得我赶紧又来学一波堆优化的Dijkstra(之前只会S ...

5. 【洛谷】P1176： 路径计数2【递推】

P1176 路径计数2 题目描述 一个N×N的网格,你一开始在(1,1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N,N),即右下角有多少种方法. 但是这个问题太简单了,所以 ...

6. 洛谷——P1176 路径计数2

P1176 路径计数2 题目描述 一个N \times NN×N的网格,你一开始在(1,1)(1,1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N,N)(N,N),即右下角有 ...

7. 洛谷 P1176 路径计数2

P1176 路径计数2 题目描述 一个N×N的网格,你一开始在(1, 1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N, N),即右下角有多少种方法. 但是这个问题太简单了, ...

8. 《Linux就该这么学》培训笔记_ch02_一些必须掌握的Linux命令

本文在原来作者的基础上做一些符合自己的修改.原文参考: <Linux就该这么学>培训笔记_ch02_一些必须掌握的Linux命令.     本章的内容虽然多,基本都是书本原话,但是笔记能精 ...

9. 《Linux就该这么学》培训笔记_ch03_管道符、重定向与环境变量

<Linux就该这么学>培训笔记_ch03_管道符.重定向与环境变量 文章最后会post上书本的笔记照片. 文章主要内容: 输入输出重定向 管道命令符 命令行的通配符 常用的转义字符 重要 ...

10. 《Linux就该这么学》培训笔记_ch04_Vim编辑器与Shell命令脚本

<Linux就该这么学>培训笔记_ch04_Vim编辑器与Shell命令脚本 文章最后会post上书本的笔记照片. 文章主要内容: Vim编辑器 Shell脚本 流程控制语句 if语句 f ...

## 随机推荐

1. C语言的所有函数

auto 声明自动变量break 跳出当前循环case 开关语句分支char 声明字符型变量或函数返回值类型const 定义常量,如果一个变量被cost修饰,那么他的值就不能再被改变continue ...

2. Linux C语言编程基础

Linux C语言编程基础 选择教材第二章的一节进行编程基础练习 二叉树广度优先遍历(链队) 算法: "head.h" #ifndef _head_h_ #define _head ...

3. 根据指定月份，打印该月份所属的季节。 3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季 if和switch各写一版

1.public class Month{ public static void main(String args[]){ for (int i = 1;i <= 12 ;i++ ) { if ...

4. app自动化前置准备&环境搭建

编写脚本之前的一些前置准备工作. 1,安装appium server:官网地址:http://appium.io/ 安装教程:https://www.cnblogs.com/gancuimian/p/ ...

5. 在使用admin后台管理，添加或者修改数据库时，出现错误，no such table: main.auth_user__old

在使用admin后台管理,添加或者修改数据库时,出现错误,no such table: main.auth_user__old. Django是2.0.9的版本,python是3.8.0 上述错误是因 ...

6. 20220305认证第1题 leetcode 1385. 两个数组间的距离值

给你两个整数数组 arr1 , arr2 和一个整数 d ,请你返回两个数组之间的 距离值 . 「距离值」 定义为符合此距离要求的元素数目:对于元素 arr1[i] ,不存在任何元素 arr2[j]  ...

7. 2020第十一届蓝桥杯大赛软件类国赛题目 C/C++ B 组

试题 A: 美丽的 2 本题总分:5 分 问题描述:在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2? #include <stdio.h> #include ...

8. maven的下载与安装 win10系统

1.安装maven的前提是jdk环境要配置好 不然下载jar包的时候会出错 2. Maven软件安装包下载 (推荐官网下载) 官网地址https://maven.apache.org/ 然后 3.下载 ...

9. 英国延长 UKCA 标记截止日期

政府于 2022 年 11 月 14 日宣布,企业将有 2 年的时间来应用新的 UKCA 产品标记.在 2024 年 12 月 31 日之前,企业可以选择使用 UKCA 或 CE 标志,之后企业只能使 ...

10. ubuntu | virtualbox报错：不能为虚拟电脑打开一个新任务

百度了几个办法 都不行. 还得是gxd,说在vmware虚拟机设置勾上这个就行了