本文章是[学习笔记]概率与期望进阶的一部分
丢掉寒假作业继续学
题目:Warm up 2
平方期望基本推导:
2.Square of wins: You bought N N N ( N ≤ 1 0 5 N ≤ 10^5 N ≤ 105) lottery tickets. The i i i-th of them is winning with p-bility p i p_i pi. The event are independent (important!). Find EV of the square of the number of winning tickets.
给你 n n n个 0 / 1 {0/1} 0/1随机变量 x i x_i xi,每个变量为 1 1 1的概率为 p i p_i pi
求 E [ ( ∑ x i ) 2 ] E[(\sum x_i)^2] E[(∑xi)2]。
sol:
我们利用下面的期望基本性质对式子展开:
如果 X , Y X,Y X,Y独立,那么 E [ X Y ] = E [ X ] × E [ Y ] E[XY]=E[X]\times E[Y] E[XY]=E[X]×E[Y]
E [ X + Y ] = E [ X ] + E [ Y ] E[X+Y]=E[X]+E[Y] E[X+Y]=E[X]+E[Y]
E [ ( ∑ i x i ) 2 ] = E [ ∑ i , j x i × x j ] = ∑ i , j E [ x i × x j ] = ∑ i ≠ j E [ x i ] × E [ x j ] + ∑ i E [ x i 2 ] = ∑ i ≠ j p i × p j + ∑ i p i \begin{aligned} E[(\sum_{i} x_i)^2]&=E[\sum_{i,j}x_i\times x_j]\\ &=\sum_{i,j}E[x_i\times x_j]\\ &=\sum_{i≠j}E[x_i]\times E[x_j]+\sum_{i}E[x_i^2]\\ &=\sum_{i≠j}p_i\times p_j+\sum_{i}p_i \end{aligned} E[(i∑xi)2]=E[i,j∑xi×xj]=i,j∑E[xi×xj]=i=j∑E[xi]×E[xj]+i∑E[xi2]=i=j∑pi×pj+i∑pi
方差基本推导:
之前概率生成函数的时候已经说过了。
V
a
r
(
X
)
=
E
[
(
X
−
E
[
X
]
)
2
]
=
E
[
X
2
−
2
X
E
[
X
]
+
E
2
[
X
]
]
=
E
[
X
2
]
−
2
E
[
X
E
[
X
]
]
+
E
[
E
2
[
X
]
]
=
E
[
X
2
]
−
2
E
2
[
X
]
+
E
2
[
X
]
=
E
[
X
2
]
−
E
2
[
X
]
\begin{aligned} Var(X)&=E[(X-E[X])^2]\\ &=E[X^2-2XE[X]+E^2[X]]\\ &=E[X^2]-2E[XE[X]]+E[E^2[X]]\\ &=E[X^2]-2E^2[X]+E^2[X]\\ &=E[X^2]-E^2[X]\\ \end{aligned}
Var(X)=E[(X−E[X])2]=E[X2−2XE[X]+E2[X]]=E[X2]−2E[XE[X]]+E[E2[X]]=E[X2]−2E2[X]+E2[X]=E[X2]−E2[X]
转为求平方期望
推导中有一个关键,就是 E [ X ] E[X] E[X]是一个确定的常数。
因此才会有 E [ X ] E[X] E[X]与 X X X独立, E [ E 2 [ X ] ] = E 2 [ X ] E[E^2[X]]=E^2[X] E[E2[X]]=E2[X]等结论。
立方期望基本推导:
3.Cube of wins:Same but find EV of the 3-rd or 4-th power.
还是上面那道题,求 E [ ( ∑ x i ) 3 ] E[(\sum x_i)^3] E[(∑xi)3]和 E [ ( ∑ x i ) 4 ] E[(\sum x_i)^4] E[(∑xi)4]。
sol:
还是一样的套路:
E
[
(
∑
i
x
i
)
3
]
=
E
[
∑
i
,
j
x
i
×
x
j
×
x
k
]
=
6
∑
i
<
j
<
k
p
i
⋅
p
j
⋅
p
k
+
6
∑
i
<
j
p
i
⋅
p
j
+
∑
i
p
i
\begin{aligned} E[(\sum_{i} x_i)^3]&=E[\sum_{i,j}x_i\times x_j\times x_k]\\ &=6\sum_{i<j<k}p_i·p_j·p_k+6\sum_{i<j}p_i·p_j+\sum_{i}p_i \end{aligned}
E[(i∑xi)3]=E[i,j∑xi×xj×xk]=6i<j<k∑pi⋅pj⋅pk+6i<j∑pi⋅pj+i∑pi
4次方一样的。
CF 1187 Expected Square Beauty
• 令 b i b_i bi为 [ l i , r i ] [l_i,r_i] [li,ri]里面的随机数, X X X为 b b b不同段的段数,求 E [ X 2 ] E[X^2] E[X2]
• n ≤ 1 0 5 n\leq 10^5 n≤105
经典平方期望入门题。
设事件
X
i
X_i
Xi表示
b
i
≠
b
i
+
1
b_{i}≠b_{i+1}
bi=bi+1,其中我们强制规定
X
n
X_n
Xn为必然事件。
这里一定要注意的是事件
X
i
X_i
Xi与
X
i
+
1
X_{i+1}
Xi+1互相不独立需要单独计算,计算的话可以考虑简单容斥一下。
E
[
X
2
]
=
E
[
(
∑
i
=
1
n
X
i
)
2
]
=
∑
∣
i
−
j
∣
≥
2
E
[
X
i
]
×
E
[
X
j
]
+
∑
i
E
[
X
i
X
i
+
1
]
+
∑
i
E
[
X
i
2
]
=
∑
∣
i
−
j
∣
≥
2
A
i
×
A
j
+
∑
i
B
i
+
∑
i
A
i
\begin{aligned} E[X^2]&=E[(\sum^n_{i=1} X_i)^2]\\ &=\sum_{|i-j|≥2}E[X_i]\times E[X_j]+\sum_{i}E[X_iX_{i+1}]+\sum_{i}E[X_i^2]\\ &=\sum_{|i-j|≥2}A_i\times A_j+\sum_{i}B_i+\sum_{i} A_i\\ \end{aligned}
E[X2]=E[(i=1∑nXi)2]=∣i−j∣≥2∑E[Xi]×E[Xj]+i∑E[XiXi+1]+i∑E[Xi2]=∣i−j∣≥2∑Ai×Aj+i∑Bi+i∑Ai
A
i
,
B
i
A_i,B_i
Ai,Bi懒得写了见之前的博客。
CF 1236 F Alice and the Cactus
概率与期望综合能力测试:)
• 给一个仙人掌,每个点1/2删除。
• 问期望下连通块个数的方差。
V
a
r
(
X
)
=
E
[
(
X
−
E
[
X
]
)
2
]
=
E
[
X
2
]
−
E
2
[
X
]
Var(X)=E[(X-E[X])^2]=E[X^2]-E^2[X]
Var(X)=E[(X−E[X])2]=E[X2]−E2[X]。
连通块个数
X
=
V
−
E
+
C
X=V-E+C
X=V−E+C。
先要算
E
[
V
]
−
E
[
E
]
−
E
[
C
]
E[V]-E[E]-E[C]
E[V]−E[E]−E[C]。
然后是最精彩的部分:
E
(
(
V
−
E
+
C
)
2
)
=
E
(
V
2
)
+
E
(
E
2
)
+
E
(
C
2
)
+
2
(
E
(
V
C
)
−
E
(
V
E
)
−
E
(
V
C
)
)
E((V-E+C)^2)=E(V^2)+E(E^2)+E(C^2)+2(E(VC)-E(VE)-E(VC))
E((V−E+C)2)=E(V2)+E(E2)+E(C2)+2(E(VC)−E(VE)−E(VC))。
这九种情况依次计算就好:)
放心…你一定不会自闭的…
Fibonacci’s Nightmare
推柿子游戏的噩梦关卡:)
• a 0 = 1 a_0=1 a0=1
• a n = a i + a j a_n=a_i+a_j an=ai+aj,其中 i , j i,j i,j在 [ 0 , n − 1 ] [0,n-1] [0,n−1]之间随机选择。
• 求第n项的方差。
• n < = 1 0 6 n<=10^6 n<=106
推导写起来太麻烦GU
k方期望基本推导:
众所周知,第二类斯特林数是自然幂拆成组合数的系数(点我学习):
x
k
=
∑
i
=
0
k
{
k
i
}
x
i
‾
=
∑
i
=
0
k
{
k
i
}
(
x
i
)
⋅
i
!
x^k=\sum^{k}_{i=0}\begin{Bmatrix} k \\ i \end{Bmatrix}x^{\underline{i}}=\sum^{k}_{i=0}\begin{Bmatrix} k \\ i \end{Bmatrix}\binom{x}{i}·i!
xk=i=0∑k{ki}xi=i=0∑k{ki}(ix)⋅i!
UPD:当然,这并不意味着遇到求权值的k次方就要用这个结论。例如在权值由两个确定数字组成的时候,我们可以使用二项式定理直接解决。
我们将它运用到求k次的期望中。
例如之前我们求的
E
[
(
∑
i
x
i
)
3
]
E[(\sum_{i} x_i)^3]
E[(∑ixi)3]。
E
[
(
∑
i
x
i
)
3
]
=
E
[
∑
i
,
j
x
i
×
x
j
×
x
k
]
=
{
3
3
}
⋅
3
!
∑
i
<
j
<
k
p
i
⋅
p
j
⋅
p
k
+
{
3
2
}
⋅
2
!
∑
i
<
j
p
i
⋅
p
j
+
{
3
1
}
⋅
1
!
∑
i
p
i
\begin{aligned} E[(\sum_{i} x_i)^3]&=E[\sum_{i,j}x_i\times x_j\times x_k]\\ &=\begin{Bmatrix} 3 \\ 3 \end{Bmatrix}·3!\sum_{i<j<k}p_i·p_j·p_k+\begin{Bmatrix} 3 \\ 2 \end{Bmatrix}·2!\sum_{i<j}p_i·p_j+\begin{Bmatrix} 3 \\ 1 \end{Bmatrix}·1!\sum_{i}p_i \end{aligned}
E[(i∑xi)3]=E[i,j∑xi×xj×xk]={33}⋅3!i<j<k∑pi⋅pj⋅pk+{32}⋅2!i<j∑pi⋅pj+{31}⋅1!i∑pi
上面这东西不管是从代数意义上或者是从组合意义上都很好理解。
小栗子(好像没什么关系):
6.Small power of subtree You’re given a tree of size N N N ( N ≤ 1 0 5 N ≤ 10^5 N ≤ 105) and an integer k k k ( k ≤ 10 k ≤ 10 k ≤ 10). Find the sum of sizek over all “subtrees”, i.e. connected subgraphs. Print the answer modulo 1 0 9 + 7 10^9 + 7 109 + 7.
给你一个节点数为 n n n的树,求所有连通子树的siz的k次方的和
大概是CF1097G的简化版。
设一个连通子树为
T
T
T,然后有:
∑
T
s
i
z
e
(
T
)
k
=
∑
T
∑
i
=
0
k
{
k
i
}
(
s
i
z
e
(
T
)
i
)
⋅
i
!
=
∑
i
=
0
k
{
k
i
}
⋅
i
!
∑
T
⋅
(
s
i
z
e
(
T
)
i
)
\begin{aligned} \sum_{T} size(T)^k&=\sum_{T}\sum^{k}_{i=0}\begin{Bmatrix} k \\ i \end{Bmatrix}\binom{size(T)}{i}·i!\\ &=\sum^{k}_{i=0}\begin{Bmatrix} k \\ i \end{Bmatrix}·i!\sum_{T}·\binom{size(T)}{i}\\ \end{aligned}
T∑size(T)k=T∑i=0∑k{ki}(isize(T))⋅i!=i=0∑k{ki}⋅i!T∑⋅(isize(T))
接下来就是算
∑
T
⋅
(
s
i
z
e
(
T
)
i
)
\sum_{T}·\binom{size(T)}{i}
∑T⋅(isize(T))。
考虑dp。
令
d
p
i
,
j
dp_{i,j}
dpi,j为以
i
i
i为根的连通子树,siz为
j
j
j的方案数。
做一个背包即可。
注意做背包的复杂度其实是
O
(
n
k
)
O(nk)
O(nk)的。
火车题
指hc出的题…
• 无向图的权值为连通块个数的 m m m次。
• 求所有 n n n个点有标号图的权值和。
• n ≤ 30000 n\leq 30000 n≤30000, m ≤ 15 m\leq 15 m≤15。
还是之前的套路,我们需要计算连通块选
i
i
i个的方案数。
使用无向图含
j
j
j个连通块计数的套路:
f
i
=
ln
G
(
x
)
g
i
,
j
=
∑
k
(
n
k
)
g
k
,
j
−
1
⋅
f
i
−
k
f_i=\ln G(x)\\ g_{i,j}=\sum_{k} \binom{n}{k} g_{k,j-1}·f_{i-k}
fi=lnG(x)gi,j=k∑(kn)gk,j−1⋅fi−k
选
i
i
i个的话就是
∑
k
(
n
k
)
g
k
,
i
⋅
2
n
−
k
i
!
\sum_{k}\binom{n}{k}g_{k,i}·\frac{2^{n-k}}{i!}
∑k(kn)gk,i⋅i!2n−k。
SRM 686 CyclesNumber
下面出现的结论可以在这里看到。
• 求n个点的置换循环个数m次方的和。
• n ≤ 100000 , m ≤ 500 n\leq 100000, m\leq 500 n≤100000,m≤500
看到求置换个数首先想到第一类斯特林数。
于是答案就是
∑
i
=
1
n
[
n
i
]
⋅
i
m
\sum^{n}_{i=1} \begin{bmatrix} n \\ i \end{bmatrix}·i^m
∑i=1n[ni]⋅im。
有一个结论:
[
n
+
1
m
+
1
]
=
∑
i
[
n
i
]
(
i
m
)
\begin{bmatrix} n+1 \\ m+1 \end{bmatrix}=\sum_{i} \begin{bmatrix} n \\ i \end{bmatrix} \binom{i}{m}
[n+1m+1]=∑i[ni](mi)。
然后就可以跟之前一样推式子了:
∑
i
=
1
n
[
n
i
]
⋅
i
m
=
∑
i
=
1
n
[
n
i
]
∑
j
=
0
m
{
m
j
}
(
i
j
)
⋅
j
!
=
∑
j
=
0
m
j
!
⋅
{
m
j
}
∑
i
=
1
n
[
n
i
]
(
i
j
)
=
∑
j
=
0
m
j
!
⋅
{
m
j
}
[
n
+
1
j
+
1
]
\begin{aligned} \sum^{n}_{i=1} \begin{bmatrix} n \\ i \end{bmatrix}·i^m &=\sum^{n}_{i=1}\begin{bmatrix} n \\ i \end{bmatrix}\sum^{m}_{j=0}\begin{Bmatrix} m \\ j \end{Bmatrix}\binom{i}{j}·j!\\ &=\sum^{m}_{j=0}j!·\begin{Bmatrix} m \\ j \end{Bmatrix}\sum^{n}_{i=1}\begin{bmatrix} n \\ i \end{bmatrix}\binom{i}{j}\\ &=\sum^{m}_{j=0}j!·\begin{Bmatrix} m \\ j \end{Bmatrix}\begin{bmatrix} n+1 \\ j+1 \end{bmatrix} \end{aligned}
i=1∑n[ni]⋅im=i=1∑n[ni]j=0∑m{mj}(ji)⋅j!=j=0∑mj!⋅{mj}i=1∑n[ni](ji)=j=0∑mj!⋅{mj}[n+1j+1]
O
(
n
m
)
+
O
(
m
2
)
O(nm)+O(m^2)
O(nm)+O(m2)预处理两个数计算即可。