2023.6.12 闲话
很多人不知道现在已经是 6.12 了,其实我生活在美国(不是地球上那个,但是同构),在机房只不过是我的投影。
推歌:
- 鏡の魔法 - ひとしずく×やま△ feat. 镜音レン .
- 魔法の鏡 - ひとしずく×やま△ feat. 鏡音リン & 鏡音レン .
这个其实我更偏好鏡の魔法一点,魔法の鏡就感觉旋律比较平淡了 . 一滴P 确实是很强大的,比如 Mr.シャーデンフロイデ、祝福のメシアとアイの塔和背徳の花都是非常优秀的曲目 .
推歌:Defection - TeddyLoidfeat feat. DELTA .
因为我 cnblogs 99 粉丝了,并且 joke3579 洛谷给我发私信了,非常愉悦,所以放了个这个 .
大概就是基于 Richard P. Stanley 的 Enumerative Combinatorics Volume 2 和 Catalan Addendum,不过只写了前面几个题(烂尾). Catalan 数的这类问题一般被称作 Catalania (Catalania = Catalan mania) 好像 .
我要是以后有空可能会补一下没看的题目,不过可能到 AFO 了也没空 .
不一定能完全领悟到原作者的意思,可能有的地方有问题 /kk
前置知识
基本定义
平面树 (plane tree):
- 有根:就是儿子顺序区分的树之类的,后文平面树一般都是有根的 .
- 无根:儿子顺序循环同构之类的 .
内部点 (internal vertix/node) 就是非叶子节点 . trivalent 树就是每个点度为 0 或 2 的树 .
OI 中好像不太用这种词,别不知道是啥了 .
可能和别的地方的定义不太一样,这个问题不大 .
文中右链默认极长 .
关于 Catalan 数
Catalan 数 \(C_n\) 满足以下等式:
Catalan 数 OGF 的封闭形式:
同时,有 \(C(z)=1+zC^2(z)\) .
另外,记
分别表示 Catalan 数偶数位和奇数位的 OGF .
常见问题:
(Enumerative Combinatorics Volume 2, Page 173)
这张图里有本文涉及的 Dyck 路和 ballot sequence 的定义,可能和别的地方不太一样,注意一下 .
正文
只写 6.19 章的可做非平凡题目 .
Exercises
\(\text{(g)}\) 计数 \(n+2\) 个点的平面树,满足每个满足儿子数量和父亲的儿子数量的最小值大于 1 的点的右链的长度都为偶数 .
用常见的构造 Dyck 路到平面树双射的方法即可变成问题 \(\text{(j)}\),也就是下一个问题 .
(原文是 Plane trees with \(n+2\) vertices such that the rightmost path of each subtree of the root has even length,疑惑)
\(\text{(j)}\) 计数长为 \(2n+2\) 的 Dyck 路,满足每个 \((1,-1)\) 的极长连续段的长度为奇数 .
令 \(F(z),G(z)\) 分别是长为 \(2n\),只在开头和结尾碰 \(x\) 轴,且每个 \((1,-1)\) 的极长连续段的长度为奇数 / 偶数的 OGF .
那么不难发现的是 \(F=z(1+CG)\) 且 \(G=zFC\) . 由此解得 \(F(z)=\dfrac z{1-z^2C(z)^2}\) .
那么答案的 OGF 就是 \(H(z)=\dfrac1{1-F(z)}=1+zC(z)\),很好 .
\(\text{(k)}\) 计数长为 \(2n+2\) 的 Dyck 路,满足没有高为 2 的峰(一个峰定义为连续的步 \((1,1)\) 和 \((1,-1)\) 夹住的点).
构造双射,首先在路径前添加一个 \((1,1),(1,-1)\),然后给所有没有高为 1 的峰的极长 Dyck 路抬高一层,最后删掉所有形如 \((0,0),(1,1),(2,0)\) 的子 Dyck 路 .
\(\text{(l)}\) 计数两条长为 \(n+1\) 的路径,其中只使用 \((1,0),(0,1)\) 步且只在开头和结尾处相交 . 如果两种方案看起来一样那么它们就一样 .
注:这种图案被称作 parallelogram polyomino .
直接考虑图案,令 \(a_i\) 表示第 \(i\) 行的方格数,\(b_i\) 表示第 \(i\) 列的方格数,构造序列 \(\sigma\):
次幂表示重复若干次 .
那么可以发现构造出了原问题到 ballot sequence 的双射 . 这样就做完了 .
\(\text{(m)}\) 计数两条长为 \(n-1\) 的路径,其中只使用 \((1,0),(0,1)\) 且在开头和结尾处相交,满足有一条路径永远不必另一条高 . 如果两种方案看起来一样那么它们就一样 .
去掉 \(\text{(l})\) 中两条路径的开头和结尾步即变成这个问题 .
\(\text{(n})\) 计数 \(2n\) 个圆周上的点间连 \(n\) 条不相交弦的方案数 .
钦定一个点出发顺时针走,遇到一条弦的时候第一次走 \((1,1)\),第二次走 \((1,-1)\),那么与 Dyck 路形成双射 .
\(\text{(o})\) 计数 \(2n\) 个有序点间连 \(n\) 条不相交弧的方案数,弧的方向只能向上 .
把 \(\text{(n})\) 破环为链 .
\(\text{(p})\) 计数 \(n+1\) 个有序点间连 \(n\) 条不相交弧的方案数,弧的方向只能向上,弧之间构成一棵树且弧两两不交 .
注:问题中的树被称作 noncrossing alternating tree .
注意到总有一条边从最左边的点连向最右边的点,考虑删掉这条边,那么问题可以被分为两个子问题,这导出了与 Catalan 数相同的递推式 .
\(\text{(s)}\) 计数对于任意 \(i\) 满足 \(a_i\le i\) 的不减正整数序列 \(\{a_n\}\) .
考虑从 \((0,0)\) 走到 \((n,n)\) 且不经过对角线的格路计数问题,考虑每个 \((1,0)\) 步下方的面积即可构造出两者之间的双射 .
\(\text{(t)}\) 计数对于任意 \(i\) 满足 \(a_i\le 2i\) 的递增正整数序列 \(\{a_n\}\) .
使用常见手法去掉递增的严格:给 \(a_i\) 减 \(i-1\) 即变成问题 \(\text{(s)}\) .
\(\text{(u)}\) 计数满足 \(a_0=0\) 且 \(0\le a_{i+1}<a_i+1\) 的整数序列 \(\{a_n\}\) .
考虑把第 \(i\) 位改成一个 \(1\) 后面接 \(a_i-a_{i+1}\) 个 \(-1\)(\(a_{n+1}=0\))即构造出与 ballot sequence 的双射 .
\(\text{(v)}\) 计数满足 \(a_i\le 1\) 且 \(\{a\}\) 的所有前缀和非负的整数序列 \(\{a_{n-1}\}\) .
虽然和 \(\text{(u)}\) 是一样的,但是看起来好像也没那么平凡 . 和 \(\text{(u)}\) 就差一个首项,把首项也参与差分即可 .
Addendum
\(\text{(ooo)}\) 计数满足如下条件的有 \(n-1\) 个内部点的平面树的个数:
- 每个内部点的儿子数量为 1 或 2 .
- 儿子数量为 1 的点只在从根出发的右链上 .
按照 DFS 序遍历树,往左儿子走或者唯一的一个儿子走的时候走 U,否则走 D,那么就建立起这个和 Dyck 路的双射,关于构造与 Dyck 路的双射的一些说明见 2023.4.9 闲话 .
\(\text{(ppp)}\) 计数 \(n\) 个点的平面树,其中从左到右遍历根的每个子树先有大小是偶数的子树再有大小是奇数的子树 . 并且大小是偶数的子树被染上红色或蓝色 .
写出答案的 OGF 就是 \(\dfrac{1}{(1-2zE(z))(1-zO(z))}\) .
那么根据一些玄学操作就可以得到 OGF 其实就是 \(C(z)^2\) .
好像是 L. Shapiro 的结果,具体证明过程我还不太清楚 .
\(\text{(qqq)}\) 计数 \(n\) 个点的平面树,叶子被染成红色或蓝色 .
还是考虑构造与 Dyck 路的双射,开局走一个 U,按欧拉序遍历,如果往下走就 U,往上走就 D,不过蓝色叶子的位置走 UD,结尾走一个 D 结束 .
因为开局向上平移一位所以 UD 一定合法,又有红色叶子走 DU,这样就把红色叶子和蓝色叶子区分开了 . 这是相较于任意平面树的改进之处 .
\(\text{(rrr)}\) 计数有 \(n\) 个内部点的平面树,满足每个有两个儿子的结点的左儿子一定是内部点 .
按 DFS 序走,对于一条边 \((u,v)\),其中 \(u\) 离根较远 . 如果 \(v\) 没有兄弟,则如果 \(v\) 是左儿子,把它则走 U,如果是右儿子则走 D . 这样就和 Dyck 路双射了 . 其实就是和 \(\text{(ooo)}\) 差不多的方法 .
\(\text{(sss)}\) 计数满足以下条件的平面树:
- 每个结点的儿子数量为 0, 1, 3 中的一个 .
- 有 \(n+1\) 个结点有 0 或 1 个儿子 .
构造双射:把二叉树分成左子树,右儿子的左子树和右儿子的右子树 .
或者写出答案的 OGF \(F(z)\) 满足 \(F(z)=z+z\cdot F(z)+F(z)^3\) . 那么可以解得 \(F(z)=z\cdot C(z)\) .
\(\text{(ttt)}\) 计数 \(n+1\) 个点的无根平面树,其中每个点被染成红蓝两色(相邻结点不同色),且以一条边为根 .
考虑建立圆上不相交弦问题(即 \(\text{(n})\))和此问题的双射 . 如下图构建一棵树 \(\mathcal T\),即原图的「内部对偶图」:
那么如果有 \(n\) 条弦,则 \(\mathcal T\) 显然是 \(n+1\) 个点的无根平面树,让根边为与包含顶点 \(1\) 的弦相交的边,即图中 \(\rm c\) .
那么交替给每个点染色即可,这样就构建出了圆上不相交弦问题和此问题的双射 .
\(\text{(uuu)}\) 计数 \(n+1\) 个结点的平面树,每个非根结点有正整数点权,且满足如下条件:
- 叶子的点权为 \(1\) .
- 对于任意不是叶子或根的结点,其点权不大于其儿子的点权和 .
- 深度最大的点在从根出发的右链上 .
首先删掉所有叶子的点权,然后将每个点的点权放到其到父亲的边上 . 从下往上处理每一条边,如果其点权为 \(i\),则将其右边第 \(i\) 个节点移到父亲的最右子树上,然后删掉点权 . 这样就构造出了原问题与任意平面树的双射 .
(注:满足前两条的树被称作 \(\beta(1,0)\,\text-\,\)树)
\(\text{(vvv)}\) 计数 \(n+1\) 个点的递增平面树 . 叶子节点编号从左到右依次递增 . 且 \(1\) 到 \(n+1\) 的路径包含所有内部点 .
令 \(a_u=|\operatorname{son}(u)|-1\),则构建出与 \(\text{(w)}\) 的双射 .
\(\text{(www)}\) 计数 \(n\) 个点的有根树,每个内部点有左儿子,右儿子或者中儿子,如果有中儿子则不能有其它儿子,而且每个左儿子必须有非中儿子的儿子 .
论文链接:S. Forcey, M. Kafashan, M. Maleki and M. Strayer, Recursive bijections for Catalan objects, arXiv preprint .
论文建立了 \(\text{(www)}\),\(\mathrm{(h^5)}\) 和 AHOI2012 树屋阶梯 之间的双射 . 因为太长了就不展开在这里写了 .
以下是博客签名,正文无关
本文来自博客园,作者:Jijidawang,转载请注明原文链接:https://www.cnblogs.com/CDOI-24374/p/17300507.html
版权声明:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议(CC BY-NC-SA 4.0)进行许可。看完如果觉得有用请点个赞吧 QwQ