[冬令营模拟]GTSG2018

上学期没有去 GTSG,于是今天老师让我们来做一下 GTSG2018 Day1 & Day3

Day1 在上午当成一场考试来搞了,Day3 由于锅太多而且 T3 玄学而被放到下午自学...

上午 100 + 45(老师放的是后 19 组原数据和一组 hack 数据,所以只有 40,现场的话应该是 45 )+ 80 = 225

T1 假面

n 个人,每个人有血量,q 次操作,现在有 2 种操作

1.指定一个人 x ,有 p 的概率扣他 1 滴血,一个人没有血,就死了

2.选出 k 个人 $a_1,a_2,...,a_n$ ,先去掉里面所有的死人,剩下的人中等概率选一个补魔

对于每个 2 操作求那 k 个人中每个人被补魔的概率,在所有操作后,求出每个人剩余血量的期望

$n \leq 200,q \leq 200000$ 操作 2 的次数不超过 $2000$

sol:第一问就是一个普及组的背包问题

第二问我们可以想到一个 $O(n^3)$ 的普及组做法

首先我们由第一问,可以得到一个数组 $d_i$ 表示第 i 个人死了的概率,$f_{(i,j)}$ 表示除了 i ,还有 j 个人活着的概率,

于是对于选出来的第 i 人,他被选到的概率为

$$(1 - d_i) \times \sum^{k-1}_{j=0} \frac{1}{j+1} \times f_{(i,j)}$$

猜你喜欢

转载自www.cnblogs.com/Kong-Ruo/p/10000888.html
今日推荐