bzoj4766 文艺计算姬(完全二分图生成树计数)和一个拓展结论

A点集有n个点,B点集有m个点
考虑一棵生成树的prufer序列生成过程,最后剩下的两个点一定是一个在A点集,一个在B点集,也就是说n1个A点集的点要被删去,m1个B点集的点要被删去,prufer序列中要有n1个B点集的点,m1个A点集的点。
考虑对于一个长度为m1的A点集中点的序列,和一个长度为n1的B点集中点的序列,如何归并成一个点集内部没有边的合法prufer序列?考虑prufer序列的过程,每次要将prufer序列当前第一个点和未出现点集中标号最小的点连一条边,那么每次连边时,这个未出现点集中标号最小的点是固定的,要选择他另外一边的点集对应序列的最靠前的点加入prufer序列。而最后未出现点集中剩余的两个点正好就是最后留下的两个点,一定合法。
所以每一对这样的合法序列唯一对应一个合法的prufer序列,所以合法的生成树个数就是nm1mn1

另外一个例子:n个点的有标号无向图,定义两个图本质不同为存在一对点(x,y),在一个图中点双联通,在另外一个图中不点双联通,求本质不同的无向图个数。
转化为n个圆点,圆点有标号,方点无标号的圆方树计数。
由于和方点有边的点都是圆点,所以不存在等效的方点,所以可以先算所有点都有标号的个数,再除以方点个数的阶乘。
圆点和方点自然符合二分图染色,可以看作是左侧n个点,右侧有一些方点,这样一个完全二分图的生成树个数计数。设有m个点双。
考虑到还有限制方点不可以是叶子,那么在prufer序列中,每个右侧点至少出现一次。那么右侧点这部分prufer序列的要求相当于是有n1个位置,每个位置放一个方点,每个方点至少放一次,方点无序,位置有序。这就是第二类斯特林数的定义。所以有m个方点的情况,答案是nm1{n1m}。所以这个题答案就是

i=1n1ni1{n1i}

其实是一个被毙掉的cf题,因为能被oeis到

posted @   Lebron_Durant  阅读(204)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示