首页 > 其他分享 >Combinatorics

Combinatorics

时间:2023-07-03 16:56:48浏览次数:44  
标签:子树 笛卡尔 Combinatorics sum 个数 LCA

长期更新。

CF626F Group Projects 写了。

CF1580B Mathematics Curriculum

答辩题 \(n^5\) 过 100

这个题目的条件是笛卡尔树的层数,考虑的意义是对于每个区间求 LCA 那么 LCA 必然处于 \(i\) 到根节点的链上。

求的就是构建点的个数为 \(n\),深度为 \(m\) 的儿子个数有 \(k\) 个。

然后考虑构建笛卡尔树。先选取一个根,然后注意到枚举一个儿子的子树大小和 \(\rm mth\) 儿子个数。

那么就是 :

\[f_{n, m, k} = \sum_i\sum_j f_{i, m - 1, j} f_{n - i - 1, m - 1, k - j} \tbinom{n - 1}{i} \]

然后我们考虑 \(m = 1\) 的情况,那必然 \(k = 1\),那这个时候直接乱排即可,因为是相当于笛卡尔树的一个底层子树填数,而第 \(m\) 层必然作为子树的根。

sub

标签:子树,笛卡尔,Combinatorics,sum,个数,LCA
From: https://www.cnblogs.com/Custlo/p/17523277.html

相关文章