[洛谷P4463] calc (生成函数)】的更多相关文章

首先注意到题目中 \(a\) 数组是有序的,那我们只用算有序的方案乘上 \(n!\) 即可. 而此时的答案显然 \[Ans=[x^n](1+x)(1+2x)\dots (1+Ax)=\prod_{i=1}^A(1+ix)\] 取对数把乘法变加法,即 \[ \prod_{i=1}^A(1+ix)=\exp(\sum_{i=1}^A\ln(1+ix)) \] 这里有 \(\ln\) 的展开式 \[ -\ln(1-x)=\sum_{i=1}^\infty\frac{x^i}{i} \] 故有 \[ \…
题面传送门 & 加强版题面传送门 竟然能独立做出 jxd 互测的题(及其加强版),震撼震撼(((故写题解以祭之 首先由于 \(a_1,a_2,\cdots,a_n\) 互不相同,故可以考虑求出所有集合 \(S=\{a_1,a_2,\cdots,a_n\}\) 的权值之和,然后答案乘上 \(n!\). 那么怎么求这个权值之和呢?首先有一个非常 naive 的 DP,\(dp_{i,j}\) 表示 \(1\sim i\) 中选了 \(j\) 个数,可得的集合的权值之和,那么显然有 \(dp_{i,j…
传送门 题意简述:求\(n​\)个点的简单无向连通图的数量\(\mod \;1004535809​\),\(n \leq 130000​\) 经典好题呀!这里介绍两种做法:多项式求逆.多项式求对数 先是多项式求逆的做法. 我们发现直接求连通图的数量并不好求,所以我们用所有图的数量\(g_n​\)减去不连通的数量,得到连通图的个数\(f_n​\). 易得\(g_n=2^{n \choose 2}​\) 考虑DP,枚举1号点所在的连通块大小,有\(f_n=g_n-\sum_{i=1}^{n-1} {…
题意 链接 Sol Orz yyb 一开始想的是直接设\(f_i\)表示\(i\)个点的无向联通图个数,枚举最后一个联通块转移,发现有一种情况转移不到... 正解是先设\(g(n)\)表示\(n\)个点的无向图个数,这个方案是\(2^{\frac{i(i-1)}{2}}\)(也就是考虑每条边选不选) 考虑如何得到\(g\) \[g(n) = \sum_{i=0}^n C_{n-1}^{i-1}f(i) g(n-i)\] 直接将\(2^{\frac{n(n-1)}{2}}\)带入然后化简一下可以得…
推荐YCB的总结 推荐你谷ysn等巨佬的详细题解 大致流程-- dfs求出当前树的重心 对当前树内经过重心的路径统计答案(一条路径由两条由重心到其它点的子路径合并而成) 容斥减去不合法情况(两条子路径在重心的子树内就已经相交) 删除重心(打上永久标记),对子树继续处理,转1 求重心是板子,算答案的方法要依题而定,一般都要容斥. 模板题洛谷传送门 calc函数中,头尾两个指针扫的计数方法也是一种套路 因为要sort,所以复杂度\(O(n\log^2n)\),不过蒟蒻实测你谷数据\(k\)不超过\(…
比较水的一题.居然是一道没看题解就会做的黑题…… 题目链接:洛谷 题目大意:定义一个长度为 $m$ 的正整数序列 $a$ 的价值为 $\prod f_{a_i}$.($f$ 是斐波那契数)对于每一个 $\sum a_i=n$ 的正整数序列,求出它们的价值之和. $1\le n\le 10^6$. 这题一看就是生成函数瞎搞. 令 $F$ 为 $f$ 的生成函数. 那么有 $F=x\times F+x^2\times F+x$. 就有 $F=\dfrac{x}{1-x-x^2}$. 答案即为 $\s…
[洛谷5月月赛]玩游戏(NTT,生成函数) 题面 Luogu 题解 看一下要求的是什么东西 \((a_x+b_y)^i\)的期望.期望显然是所有答案和的平均数. 所以求出所有的答案就在乘一个逆元就好了. 现在考虑怎么算上面那个东西. 对于单个的计算,我们可以用二项式定理直接展开 得到 \[\begin{aligned}\sum(a+b)^k&=\sum\sum_{i=0}^kC_k^ia^ib^{k-i}\\&=\sum_{i=0}^kC_k^i(\sum a^i)(\sum b^{k-i…
洛谷题面传送门 看到图计数的题就条件反射地认为是不可做题并点开了题解--实际上这题以我现在的水平还是有可能能独立解决的( 首先连通这个条件有点棘手,我们尝试把它去掉.考虑这题的套路,我们设 \(f_n\) 表示 \(n\) 个点的有标号 DAG 个数,\(g_n\) 表示 \(n\) 个点的有标号且弱联通的 DAG 个数,那么根据 \(\exp\) 式子的计算方式我们可以列出 \(f,g\) 生成函数之间的 exp 关系,又因为这题带标号,所以有: Trick 1. 对于有标号图连通图计数问题,…
洛谷题面传送门 PGF 入门好题. 首先介绍一下 PGF 的基本概念.对于随机变量 \(X\),满足 \(X\) 的取值总是非负整数,我们即 \(P(v)\) 表示 \(X=v\) 的概率,那么我们定义 \(X\) 的概率生成函数为 \(F(x)=\sum\limits_{n\ge 0}P(n)x^n\).较一般的生成函数有所不同的是,对于概率生成函数 \(F(1)=1\) 必然成立,因为 \(X\) 取遍所有值的概率之和为 \(1\).此外,\(X\) 的期望 \(E(X)\) 也可表示为 \…
洛谷题面传送门 神仙题. 首先考虑一个点的深度是什么,注意到对于笛卡尔树而言直接从序列的角度计算一个点的深度是不容易的,因为这样会牵扯到序列中多个元素,需要 fixed 的东西太多,计算起来太复杂了.因此考虑从树本身的角度计算一个点的深度.注意到对于一棵树上所有点 \(u\)​ 而言都有 \(dep_u=\sum\limits_{v}[\text{LCA}(u,v)=v]\)​,因此我们求解一个点 \(x\)​ 的答案时,可以枚举所有 \(u,v\)​ 并计算 \(v\)​ 对 \(u\)​ 的…