概率生成函数学习

https://www.cnblogs.com/zzctommy/p/14256844.html

https://www.cnblogs.com/HenryHuang-Never-Settle/p/14702997.html

概率生成函数,设多项式 \(F(x)=\sum P(X=i)x^i\)

则:

  • \(F(1)=1\)

  • \(E(x)=F'(1)\);

  • \(E(x^{\underline{k}})=F^{(k)}(1)\)\(k\) 阶导。

  • \(E(x^2)=E(x^{\underline{2}}+x^{\underline{1}})=E(x^\underline 2)+E(x^\underline 1)=F''(1)+F'(1)\)

  • 方差 \(V(x)=E((x-E(x))^2)=E(x^2-2xE(x)+E(x)^2)=E(x^2)+E(x)^2-2E(x)E(x)=E(x^2)-E(x)^2\),即方差等于随机变量平方的期望减去期望的平方。

  • \(G(x)=\sum P(X > i)x^i\),则有 \(1+xG(x)=F(x)+G(x)\)

  • \(E(x)=F'(1)=G(1)\)

大小写分不清楚了。。

250.P4548 CTSC2006歌唱王国

答案就是 \(F'(1)\)

显然有 \(1+xG(x)=F(x)+G(x)\),求导后可得 \(F'(1)=G(1)\)

还有 \(F(1)=1\)

以及

\[G(x)(\dfrac{x}{n})^{m}=\sum_{i=1}^{m}A_iF(x)(\dfrac{x}{n})^{m-i} \]

表示还没结束,后面加入一个完整的 \(S\),但是可能提前结束,枚举在什么时候提前结束,\(A_i\) 表示 \(S[1,i]\) 是否为字符串的 border

代入 \(x=1\) 后可得,\(G(1)=\sum_{i=1}^{m}A_in^i\)

251.Hitori的作文(string)

\(w_p\) 表示得到连续的字符串 \(p\) 的概率,则 \(w_p=\prod_{i=1}^{n} a_{p_i}\)显然也有

\[G(x)\cdot x^{|S|} \cdot w_S=\sum_{p,\operatorname{p is a border of S}} F(x)\cdot x^{|S|-|p|}\cdot w_{S-p}\\=\sum_{p,\operatorname{p is a border of S}} F(x)\cdot x^{|S|-|p|}\cdot \frac{w_S}{w_p} \]

则:

\[G(1)=\sum_{p,\operatorname{p is a border of S}}\frac{1}{w_p} \]

252.P3706 [SDOI2017] 硬币游戏 and 加强版

给定 \(n\) 个序列 \(A_1,A_2,\cdots,A_n\),第 \(i\) 个序列的长度为 \(L_i\)。每次从 \([1,m]\) 中以 \(p_i\) 的概率生成一个数 \(i\) 加入初始为空的序列 \(B\) 末尾,若 \(A_1,A_2,\cdots ,A_n\) 均为 \(B\) 的子串则停止。求序列 \(B\) 的期望长度。

答案为 \(E(\max(T_i))\)\(T_i\) 表示 \(i\) 首次出现时的长度。

容斥后答案为:\(\sum_{S\subseteq\{1,2,\cdots n\}}(-1)^{|S|+1}E(\min_{i\in S}(T_i))\)

即只考虑 \(S\) 中字符串,出现一个 \(A_i\) 就停止的期望长度。

\(G(x)\) 表示 \(i\) 轮之后还没结束的概率。

\(F_i(x)\) 表示第 \(i\) 个人在第 \(j\) 轮获胜概率,\(P(T)=\prod_{i\in T} p_i\)\(a_{i,j,k}=[A_i[1,k]=A_j[L_{j}-k+1,L_j]]\)

则有:

\[\sum_{i=1}^{n}F_i(x)+G(x)=1+xG(x)\\ \forall i\in S,G(x)P(A_i)x^{L_i}=\sum_{j\in S}\sum_{k=1}^{L_i}a_{i,j,k}F_j(z)P(A_i[k+1,L_i])x^{L_i-k} \]

答案就是 \(\sum_{i=1}^{n}F_i'(1)\)

带入 \(x=1\) 得到 \(n\) 个方程,同时还有 \(\sum_{i=1}^{n}F'(1)=G(1),\sum_{i=1}^{n}F(1)=1\)

高斯消元即可。

2024.8 hdu A

P4581 [BJOI2014] 想法

\(E\min(x_i)=\frac{1}{n+1}\)

高山流急

记录经典结论,\(n\)\([0,1]\) 的均匀随机变量的和 \(\le z\) 的概率是为:

\[\sum_{i=0}^{\lfloor z\rfloor}(-1)^i\binom{n}{i}\frac{(z-i)^n}{n!} \]

大概思路是我们只需要知道 B(e^x) 的前 \(m\) 项,求出 \(P(e^x)\)\(Q(e^x)\) 的前 \(m\) 项除一下就好了。

http://192.168.102.138/JudgeOnline/upload/attachment/file/20230511/20230511063343_81474.pdf

PGF 问题的进阶。

image

这个东西,本来有 \(2G'(1)\),但是系数出错。

AT_agc038_e [AGC038E] Gachapon

定义一个线性变换 \(\lambda\),将 EGF 转成 OGF。

则答案为:

\[(\lambda(\sum_{i=1}^{n}\frac{a_i^{b_i-1}z^{b_i-1}}{S^{b_i-1}(b_i-1)!}\prod_{j\ne i} (e^{\frac{a_jz}{S}}-\sum_{k=0}^{b_j-1}\frac{a_j^kz^k}{S^kk!})))' \]

可以发现里面的 EGF 可以写成 \(\sum_{p,q}A_{p,q}z^p e^{\frac{qz}{S}}\),容易求出。

再对 \(z^p e^{\frac{qz}{S}}\) 作变换即可,有:

\[\lambda(z^p e^{qz})=\frac{p!z^p}{(1-qz)^{p+1}} \]

求导后代入 \(1\) 即可,时间复杂度 \(\mathcal O(n^3)\)

P5326 [ZJOI2019] 开关

这题停时不是很好钦定。

\(F(z)\) 表示 \(S\) 第一次到 \(T\) 的概率生成函数,\(G(z)\) 表示 \(T\to T\) 的概率生成函数,\(H(z)\) 表示 \(S\to T\) 的概率生成函数。

\(F(z)G(z)=H(z)\),那么 \((\frac{H(z)}{G(z)})'(1)=\frac{H'G-G'H}{G^2}(1)\)

虽然 \(G\)\(H\) 不好求,但我们可以求出 \(\widehat G\)\(\widehat H\),显然有:

\[\widehat G(z)=\prod_{i=1}^{n}\frac{e^{\frac{p_iz}{S}}+e^{\frac{-p_iz}{S}}}{2}\\ \widehat H(z)=\prod_{i=1}^{n}\frac{e^{\frac{p_iz}{S}}+(-1)^{s_i}e^{\frac{-p_iz}{S}}}{2} \]

做背包即可。

\[\hat{G}(z)=\sum_i A_i e^{\frac{iz}{S}},\quad \hat{H}(z)=\sum_i B_i e^{\frac{iz}{S}}, \]

\[G(z)=\sum_i \frac{A_iS}{S-iz},\quad G'(z)=\sum_i \frac{iA_iS}{(S-iz)^2} \]

\[\frac{GH'-HG'}{G^2}(1) = \frac{ \sum_{i,j}\left( \frac{jA_iB_jS^2}{(S-iz)(S-jz)^2} - \frac{iA_iB_jS^2}{(S-iz)^2(S-jz)} \right) }{ \sum_{i,j}\frac{A_iA_jS^2}{(S-iz)(S-jz)} }(1) \tag{1}\]

\[= \frac{ \sum_i\left( \frac{A_iB_SS^3}{S-i} - \frac{A_SB_iS^3}{S-i} \right) }{ S^2A_S^2 }\]

\[= \frac{S}{A_S^2}\sum_i\frac{A_iB_S-A_SB_i}{S-i}\]

AT_arc136_f [ARC136F] Flip Cells

加强版。

posted @ 2024-08-06 20:49  蒟蒻orz  阅读(45)  评论(0)    收藏  举报