「PKUWC2018」猎人杀
- 我们硬点一个集合在 1 后面死然后容斥
考虑每次在 [ 1 , n ] [1,n] [1,n] 随机,如果不在集合 S S S 中就跳过,那么每个人死亡的概率是一样的,证明如下
w t ∑ i ∈ S w i = w t ∑ i = 1 n w i ( ∑ i ≥ 0 ( ∑ j = 1 n w j − ∑ j ∈ S w j ∑ j = 1 n w j ) i ) \frac{w_t} {\sum_{i\in S}w_i}=\frac{w_t}{\sum_{i=1}^nw_i}(\sum_{i\ge0}(\frac{\sum_{j=1}^nw_j-\sum_{j\in S}w_j}{\sum_{j=1}^nw_j})^i) ∑i∈Swiwt=∑i=1nwiwt(i≥0∑(∑j=1nwj∑j=1nwj−∑j∈Swj)i)
分治 n t t ntt ntt 算一下大小为 S u m Sum Sum 的集合个数(带容斥系数)
【集训队作业2018】喂鸽子
- 考虑
m
i
n
−
m
a
x
min-max
min−max 容斥,我们对一个集合
S
S
S 求出它当中第一个喂饱的期望,假设第一个喂饱的时间为
t
t
t,我们用方案数除以总方案即
∣
S
∣
t
|S|^t
∣S∣t 就可以得到期望,方案数写成
e
g
f
egf
egf 的形式就是(我们钦定一个最先饱,那么总方案乘上
∣
S
∣
|S|
∣S∣ 即可)
t ! [ x t ] x k ( k − 1 ) ! ( ∑ i = 0 k − 1 x i i ! ) ∣ S ∣ − 1 ∗ 1 ∣ S ∣ t ∗ n ∗ t ∣ S ∣ ∗ ∣ S ∣ t![x^t]\frac{x^k}{(k-1)!}(\sum_{i=0}^{k-1}\frac{x^i}{i!})^{|S|-1}*\frac{1}{|S|^t}*\frac{n*t}{|S|}*|S| t![xt](k−1)!xk(i=0∑k−1i!xi)∣S∣−1∗∣S∣t1∗∣S∣n∗t∗∣S∣
注意到 f t ( x ) = ( ∑ i = 0 k − 1 x i i ! ) t f^t(x)=(\sum_{i=0}^{k-1}\frac{x^i}{i!})^t ft(x)=(∑i=0k−1i!xi)t 是可以递推的
f t ( x ) ′ = t f t − 1 ( x ) ( f ( x ) − x k − 1 ( k − 1 ) ! ) ( n + 1 ) [ x n + 1 ] f t ( x ) = t [ x n ] f t ( x ) − t [ x n − k + 1 ] f t − 1 ( x ) ( k − 1 ) ! f^t(x)'=tf^{t-1}(x)(f(x)-\frac{x^{k-1}}{(k-1)!})\\ (n+1)[x^{n+1}]f^t(x)=t[x^n]f^t(x)-t[x^{n-k+1}]\frac{f^{t-1}(x)}{(k-1)!} ft(x)′=tft−1(x)(f(x)−(k−1)!xk−1)(n+1)[xn+1]ft(x)=t[xn]ft(x)−t[xn−k+1](k−1)!ft−1(x)
O ( n 2 k ) O(n^2k) O(n2k)
【UR #19】通用测评号
- 考虑对一个点统计它满了存在一个其它没有满的概率,最后乘上
n
n
n 即可
我们硬点一个集合 S S S,求出这个点满了其它的都没有满的概率最后容斥,写成 e g f egf egf 的形式就是
( t + a − 1 ) ! [ x t + a ] x a ( a − 1 ) ! ( ∑ i = 0 b − 1 x i i ! ) ∣ S ∣ 1 ( ∣ S ∣ + 1 ) t + a (t+a-1)![x^{t+a}]\frac{x^a}{(a-1)!}(\sum_{i=0}^{b-1}\frac{x^i}{i!})^{|S|}\frac{1}{(|S|+1)^{t+a}} (t+a−1)![xt+a](a−1)!xa(i=0∑b−1i!xi)∣S∣(∣S∣+1)t+a1
O ( n 3 ) O(n^3) O(n3)