生成函数
文章平均质量分 56
Vectorxj
这个作者很懒,什么都没留下…
展开
-
[DP][拉格朗日插值][生成函数] SRM 629 Div1 Hard CandyDrawing
SolutionSolution题目的意思就是要求[xk]∏i=0n(ix+1)[x^k]\prod_{i=0}^n(ix+1) 设fn,k=[xk]∏ni=0(ix+1)f_{n,k}=[x^k]\prod_{i=0}^n(ix+1),则有fn,kfn,k−fn−1,k==fn−1,k+nfn−1,k−1nfn−1,k−1\begin{eqnarray}f_{n,k}&=&f_{n-1,k}+n原创 2017-12-30 15:22:58 · 403 阅读 · 0 评论 -
[生成函数][NTT][多项式求逆]BZOJ 3456: 城市规划
DescriptionDescriptionDescription求nnn个有标号点的联通图的方案数。SolutionSolutionSolution设fnfnf_n为nnn个有标号点的联通图的方案数。 考虑容斥。nnn个有标号点的一般图的方案数为2(n2)2(n2)2^{{n\choose 2}}。 考虑图中的一个点所在联通块大小,设其为iii。那么就有(n−1i−1)(n−...原创 2017-10-13 14:24:33 · 811 阅读 · 0 评论 -
[生成函数] HackerRank Count Fox Sequences
SolutionSolutionSolution这是个有序的序列,只要计算一个数出现了最多次,最后乘mmm就好了。 枚举出现了kkk次。 那剩下的就是∏i=1m−1(∑j=0k−1xj)=(1−xk)m−1(1−x)1−m∏i=1m−1(∑j=0k−1xj)=(1−xk)m−1(1−x)1−m\prod_{i=1}^{m-1}\bigg(\sum_{j=0}^{k-1}x^j\bigg)=...原创 2018-02-26 10:36:33 · 322 阅读 · 0 评论 -
[NTT][DP][树链剖分][分治] LOJ #6289. 花朵
SolutionSolutionSolutionfu,0/1,ifu,0/1,if_{u,0/1,i}表示uuu子树中选了iii个点,uuu选不选的答案。 转移显然就是一个卷积的形式。 考虑重链剖分。 先把轻儿子卷到根,这样只需要考虑重链。 再考虑重链上的DP。 考虑头尾选不选gu,0/1,0/1gu,0/1,0/1g_{u,0/1,0/1}。这也是个卷积,可以分治+FFT。#i...原创 2018-03-05 16:48:57 · 883 阅读 · 0 评论 -
[多项式ln][多项式exp][多项式求幂][生成函数][DP][FNT] BZOJ 3684: 大朋友和多叉树
SolutionSolutionSolution把DP写成生成函数的形式。f(x)=x+∑d∈Dfd(x)f(x)=x+∑d∈Dfd(x)f(x)=x+\sum_{d\in D}f^d(x)设g(f(x))=xg(f(x))=xg\big(f(x)\big)=x,有g(f(x))g(x)==f(x)−∑d∈Dfd(x)x−∑d∈Dxdg(f(x))=f(x)−∑d∈Dfd(x)g(x)=x−∑...原创 2018-03-06 13:00:59 · 807 阅读 · 0 评论 -
[多项式ln][多项式exp][背包DP][生成函数] LOJ #556. 咱们去烧菜吧
SolutionSolutionSolution就是个背包DP咯。 答案长这个样子ans=[xn]∏i=1m1−xaibi+ai1−xaians=[xn]∏i=1m1−xaibi+ai1−xaians=[x^n]\prod_{i=1}^m{1 - x^{a_ib_i+a_i}\over 1-x^{a_i}}考虑取个lnln\lnlnans=∑i=1m(ln(1−xaibi+ai)−ln(1−...原创 2018-03-06 14:45:00 · 881 阅读 · 0 评论 -
[多项式ln][多项式exp][生成函数] LOJ #6268. 分拆数
SolutionSolutionSolution设分拆数的生成函数F(x)=∑k≥0fkxkF(x)=∑k≥0fkxkF(x)=\sum_{k\ge0}f_kx^k几个显然的等式就是F(x)lnF(x)===∏k=1∞11−xk∑k=1∞ln11−xk∑k=1∞∑i≥1xkiiF(x)=∏k=1∞11−xklnF(x)=∑k=1∞ln11−xk=∑k=1∞∑i≥1xkii\begin{eq...原创 2018-03-13 20:54:26 · 815 阅读 · 0 评论 -
[生成函数][DP] Codeforces 891 E. Lust
SolutionSolutionSolution设最后是这个样子 a=(ai−bi)a=(ai−bi)\textbf{a}=(a_i-b_i) ,可以通过数学归纳得到 res=∏iai−∏i(ai−bi)res=∏iai−∏i(ai−bi)res=\prod_{i}a_i-\prod_{i}(a_i-b_i) 那么考虑组合意义:E∑ibi=k∏i(ai−bi)==k!∏ibi!1nk∑∑ibi...原创 2018-03-14 10:26:08 · 562 阅读 · 0 评论