题解 Luogu P5434: 有标号荒漠计数
妈妈我终于会这道题了!
设\(n\)个点的有根仙人掌个数的指数型生成函数(EGF)为\(F(x)\), 令\(f_i = [x^n]F(x)\)
对于\(f_i\), 我们考虑钦点\(1\)号点为根, 然后考虑与\(1\)相邻的是什么
\(1\)不在环上: 对于这种情况, 我们可以发现与它相邻的还是一颗仙人掌, 于是它的生成函数还是\(F(x)\)
\(1\)不在环上: 对于这种情况, 我们考虑环的大小\(i\), 那么去除点\(1\), 它的生成函数就是\(F^i(x)\), 但是考虑到对称的情况不可取, 实际上它的生成函数是\(\frac{F^i(x)}{2}\)
由于点边随意排列均可, 于是有贡献为\(\exp(F(x) + \frac{1}{2}\sum\limits_{i \geq 2}F^i(x))\)
考虑上根, 应该有
\([x^n]F(x) = [x^{n-1}](\exp(F(x)+\frac{1}{2}\sum\limits_{i \geq 2}F^i(x))) \times n\)
于是有
\(F(x) = x\; \exp(F(x) + \frac{1}{2}\sum\limits_{i \geq 2}F^i(x))\)
发现\(\frac{1}{2}\sum\limits_{i \geq 2}F^i(x) = \frac{F^2(x)}{2-2F(x)}\)
\(F(x) = x\; \exp(\frac{2F(x)-F^2(x)}{2-2F(x)})\)
接下来我们考虑直接搞一个牛顿迭代, 设\(G(F(x)) = x\; \exp(\frac{2F(x)-F^2(x)}{2-2F(x)}) - F(x)\)
接下来我们有
\(F_n(x) = F_{n-1}(x) - \frac{G(F_n(x))}{G'(F_n(x))}\)
于是我们爆算得到
\(F_n(x) = F_{n-1}(x) - \frac{2x\; \exp(\frac{2F(x)-F^2(x)}{2-2F(x)}) - 2F(x)}{x(1+\frac{1}{(F(x)-1)^2})\; \exp(\frac{2F(x)-F^2(x)}{2-2F(x)})-2}\)
在算出来\(F(x)\)后, 注意到我们F(x)的定义是有根仙人掌个数的指数型生成函数, 为了将其变成无根的, 我们令\([x^n]F(x) \leftarrow [x^n]F(x) \times \frac{1}{n}\)
接下来我们将其变成荒漠, 这一步我们将\(F(x) \leftarrow \exp(F(x))\)即可, 为什么这么是正确的, 我们考虑将\(\exp(F(x))\)展开, 有
\(\exp(F(x)) = \sum\limits{i \geq 0} \frac{F^i(x)}{i!}\), 考虑组合意义, 有\([x^n]F^i(x)\)的意义为选出\(n\)颗仙人掌并排序得到的, 为了消序除以\(n!\)即可
然后就是一道多项式板子题了qwq!
题解 Luogu P5434: 有标号荒漠计数的更多相关文章
- 题解 luogu P1144 【最短路计数】
本蒟蒻也来发一次题解第一篇请见谅 这个题有几个要点 1.无向无权图,建图的时候别忘记建来回的有向边[因此WA掉1次 2.无权嘛,那么边长建成1就好了2333333 3.最短路采用迪杰斯特拉(别忘用堆优 ...
- 有标号DAG计数(生成函数)
有标号DAG计数(生成函数) luogu 题解时间 首先考虑暴力,很容易得出 $ f[ i ] = \sum\limits_{ j = 1 }^{ i } ( -1 )^{ j - 1 } \bino ...
- 有标号DAG计数 [容斥原理 子集反演 组合数学 fft]
有标号DAG计数 题目在COGS上 [HZOI 2015]有标号的DAG计数 I [HZOI 2015] 有标号的DAG计数 II [HZOI 2015]有标号的DAG计数 III I 求n个点的DA ...
- P6295 有标号 DAG 计数
P6295 有标号 DAG 计数 题意 求 \(n\) 个点有标号弱联通 DAG 数量. 推导 设 \(f_i\) 表示 \(i\) 个点有标号 DAG 数量(不保证弱联通),有: \[f(i)=\s ...
- [题解] Luogu P5446 [THUPC2018]绿绿和串串
[题解] Luogu P5446 [THUPC2018]绿绿和串串 ·题目大意 定义一个翻转操作\(f(S_n)\),表示对于一个字符串\(S_n\), 有\(f(S)= \{S_1,S_2,..., ...
- 题解 有标号DAG计数
题目传送门 题目大意 给出\(n\),求出对于任意\(t\in[1,n]\),点数为\(t\)的弱联通\(\texttt{DAG}\)个数.答案对\(998244353\)取模. \(n\le 10^ ...
- 洛谷 P6295 - 有标号 DAG 计数(生成函数+容斥+NTT)
洛谷题面传送门 看到图计数的题就条件反射地认为是不可做题并点开了题解--实际上这题以我现在的水平还是有可能能独立解决的( 首先连通这个条件有点棘手,我们尝试把它去掉.考虑这题的套路,我们设 \(f_n ...
- 3194. 【HNOI模拟题】化学(无标号无根树计数)
Problem 求\(n\)个点的每个点度数不超过\(4\)的无标号无根树个数. Data constraint \(1\le n\le 500\) Solution 尝试着把问题一般化.我们来考虑一 ...
- 题解 Luogu P2499: [SDOI2012]象棋
关于这道题, 我们可以发现移动顺序不会改变答案, 具体来说, 我们有以下引理成立: 对于一个移动过程中的任意一个移动, 若其到达的位置上有一个棋子, 则该方案要么不能将所有棋子移动到最终位置, 要么可 ...
随机推荐
- 044、Java中逻辑运算之向左边移位2位实现功能
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- 一个有意思的html验证码: namesilo验证码
买域名的时候看到的一个验证码,感觉蛮有意思的(https://www.namesilo.com/create_account.php),这个质感看上去就不一样: 查看页面源码,果然这个验证码是用htm ...
- 【剑指Offer】面试题32 - II. 从上到下打印二叉树 II
题目 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行. 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回 ...
- [百度之星]资格赛:IP聚合
保持着也不知道什么情怀,觉得到现在才能发出来.这道题做完之后看了其他人的代码,然后再看我的,不得不说,真是幼稚的很,尤其是输入这一块,都什么跟什么啊. 但相较于之前来说,不像以前慌张了,学会先思考再去 ...
- poj3405 Corporate Identity
和上一个1226一样吧,这个还不用翻转 然而本蒟蒻还是写不对,WA一片天,不知道自己搞什么,自从去了长沙感觉就是坑啊 while(1) iq--; /*#include <cstdio> ...
- JQuery去实现校验用户名
JQuery 是什么? javascript 的代码框架. 有什么用? 简化代码,提高效率. 核心 write less do more , 写得更少,做的更多. load //找到这个元素, 去执行 ...
- 七、JavaScript之console.log输出和document.write输出
一.代码如下 二.运行效果如下 三.点击之后,效果如下 四.按一下F12,在控制台中可以看到
- 165-PHP 文本替换函数str_replace(六)
<?php $str='programming'; //定义一个字符串 $replacement='er'; //定义替换的字符串 $res=substr_replace($str,$repla ...
- 控制台连接oracle11g报ORA-12560异常
oracle11g R2 64bit oracleClient 11.2 32bit PL/SQL Developer 11.0.2 32bit 今天发现了一个奇怪的现象,如图: 后来发现机器上既有s ...
- 控制数据的小数位数 java / js
//java一般控制格式都是通过 DecimalFormat 来控制的.下边是个例子. import java.text.DecimalFormat; public class ControlBit ...