题目大意:

给定 \(m\) 棵无向树\(\left\{T_{1}=\left(V_{1}, E_{1}\right), T_{2}=\left(V_{2}, E_{2}\right), \cdots, T_{m}=\left(V_{m}, E_{m}\right)\right\}\)构成的森林。定义无向边集\(E^\ast = \left\{ \left( u, v \right) \mid u \in V_i, v \in V_j, i \neq j \right\}\).令 \(G=(V,E)\),其中 $ V = V_1 \cup V_2 \cup \cdots \cup V_m, E = E_1 \cup E_2 \cup \cdots \cup E_m \cup E^\ast$ .

你需要求出 $G $ 的 Hamilton 回路的数量。

对于每一颗树,先求出 \(ways_i\) 表示在这颗树上选出 \(i\) 条链的方案数。

现在的问题就是要把若干条链拼成一个环,同色不相邻。

先破环成链。对于一颗树,他的指数生成函数是 \(\sum_{i=1}^{n} f_i i! \sum_{j=0}^{i} (-1)^{j} \binom {i - 1} {j} \frac {x^{i-j}} {(i-j)!}\) ,成链答案就是若干个卷起来,成环的话最后还要减去首尾同色的答案。

review

本题中的指数生成函数又称"带容斥系数的生成函数",其关键是考虑广义的二项式反演 $ F(n,m) = \sum_{i,j} (-1)^{n-i+m-j} G(i,j)$ ,正确性可以不断的套一维的二项式反演.

与其类似的,设 $G(n_k) $ 为长度为 $ n $ 的排列,方案数是 $ \frac {n!} {n_1! n_2! .. n_k!} $ ,这一部分用 egf 就可以解决了.再考虑前面的系数,枚举与第一个位置相邻的同色联通块大小,算上此时的贡献.注意为 $ (-1)^{j} $ ,因为当 $ j = 0 $ 时候,贡献是正的,意义是不限制随便排列.

再考虑如何从 $ Seq $ 推到 $ Cyc $ ,对于长度为 $ len $ 的环,在容斥的时候一个合法的方案对应 $ len $ 个 $ Seq $ 的方案,对应位置除以 $ len $ 就可以了. (考虑 $ Seq_k $ 和 $ Cyc_k $ 对应位置的系数).

也可以直接在生成函数里面减去钦定头尾相同的贡献.

loj 3102的更多相关文章

  1. Loj #3102. 「JSOI2019」神经网络

    Loj #3102. 「JSOI2019」神经网络 题目背景 火星探险队发现,火星人的思维方式与人类非常不同,是因为他们拥有与人类很不一样的神经网络结构.为了更好地理解火星人的行为模式,JYY 对小镇 ...

  2. 【LOJ】#3102. 「JSOI2019」神经网络

    LOJ#3102. 「JSOI2019」神经网络 首先我们容易发现就是把树拆成若干条链,然后要求这些链排在一个环上,同一棵树的链不相邻 把树拆成链可以用一个简单(但是需要复杂的分类讨论)的树背包实现 ...

  3. [Noi2016]区间 BZOJ4653 洛谷P1712 Loj#2086

    额... 首先,看到这道题,第一想法就是二分答案+线段树... 兴高采烈的认为我一定能AC,之后发现n是500000... nlog^2=80%,亲测可过... 由于答案是求满足题意的最大长度-最小长 ...

  4. Loj #2192. 「SHOI2014」概率充电器

    Loj #2192. 「SHOI2014」概率充电器 题目描述 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品--概率充电器: 「采用全新纳米级加工技术,实现元件与导线能否通电完 ...

  5. Loj #3096. 「SNOI2019」数论

    Loj #3096. 「SNOI2019」数论 题目描述 给出正整数 \(P, Q, T\),大小为 \(n\) 的整数集 \(A\) 和大小为 \(m\) 的整数集 \(B\),请你求出: \[ \ ...

  6. Loj #3093. 「BJOI2019」光线

    Loj #3093. 「BJOI2019」光线 题目描述 当一束光打到一层玻璃上时,有一定比例的光会穿过这层玻璃,一定比例的光会被反射回去,剩下的光被玻璃吸收. 设对于任意 \(x\),有 \(x\t ...

  7. Loj #3089. 「BJOI2019」奥术神杖

    Loj #3089. 「BJOI2019」奥术神杖 题目描述 Bezorath 大陆抵抗地灾军团入侵的战争进入了僵持的阶段,世世代代生活在 Bezorath 这片大陆的精灵们开始寻找远古时代诸神遗留的 ...

  8. Loj #2542. 「PKUWC2018」随机游走

    Loj #2542. 「PKUWC2018」随机游走 题目描述 给定一棵 \(n\) 个结点的树,你从点 \(x\) 出发,每次等概率随机选择一条与所在点相邻的边走过去. 有 \(Q\) 次询问,每次 ...

  9. Loj #2331. 「清华集训 2017」某位歌姬的故事

    Loj #2331. 「清华集训 2017」某位歌姬的故事 IA 是一名会唱歌的女孩子. IOI2018 就要来了,IA 决定给参赛选手们写一首歌,以表达美好的祝愿.这首歌一共有 \(n\) 个音符, ...

随机推荐

  1. Java8新特性——Lambda表达式-1

    一.抛出需求 超市中挑选苹果,挑选条件多样化. 示例:找出绿色并且重量等于150的苹果,找出红色并且重量小于120苹果. 1.苹果类 public class Apple { private Stri ...

  2. Javascript实现的智能消防栓状态监测画面

    系统需要添加智能消防栓模块.集成了一家采用NbIOT通讯的智能消防栓产品.由第厂家平台对接NbIot特联网平台,我们平台提供一个api从第三方平台接收消防栓状态,用SignlaR把状态推送到前端.需要 ...

  3. select ng-change 方法中 拿不到 ng-modal 定义的变量值

    在使用angularjs框架的项目中,select 的数据源有两种绑定方式,在option中使用ng-repeat循环绑定,或者在select中使用ng-option 绑定. 无论哪种绑定方式,均要使 ...

  4. Tomcat - 启动闪退

    版本:Tomcat 9 问题:启动闪退.在控制台中输入"java -version"可以正常输出java的版本信息,但是使用start.bat启动时候闪退. 解决方法:配置系统环境 ...

  5. UCOSIII互斥信号量

    互斥信号量可以解决优先级反转问题 优化后现象 优化方法:L和H等待同一个信号量的时候,将L任务优先级提至H相同优先级 实验举例 void start_task(void *p_arg) { OS_CR ...

  6. 【亲测可行,图片宽度高度自适应】c# Graphics MeasureString精确测量字体宽度

    , , ) { int count = number.Length; //需要配置的字段 //Font f = new Font("Microsoft Sans Serif", f ...

  7. 自定义一个简单的JDBC连接池

    一.什么是JDBC连接池? 在传统的JDBC连接中,每次获得一个Connection连接都需要加载通过一些繁杂的代码去获取,例如以下代码: public static Connection getCo ...

  8. FastDFS+Nginx搭建Java分布式文件系统

    一.FastDFS FastDFS是用c语言编写的一款开源的分布式文件系统.FastDFS为互联网量身定制,充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标,使用FastDFS ...

  9. c# 常见文件操作

  10. Linux命令——watch

    参考:Linux watch Command Tutorial for Beginners (5 Examples) 前言 有的时候我们想重复执行某一命令,通过该命令的输出进而获知系统某些信息.wat ...