$$AVICII$$

期望概率训练

[CEOI2017] Chase

如果根固定,节点的价值即为儿子铁球数量之和

令dp[i][j]为在i为根的树里选择j个点的最大值,son[i]为儿子,sm[i]为儿子的铁球数量和

dp[i][j]=max(dp[son[i]][j],dp[son[i]][j-1]+sm[i])

此时还要枚举根,复杂度O(n*n*sm)

考虑优化

dp[i][j][0/1]为从i走到i的子树,i选不选,选了j个的最大值

g[i][j][0/1]为从i的子树走到i,i选不选,选了j个的最大值

那么可得到转移式

dp[i][j][0]=max(dp[son][j][0],dp[son][j][1])

dp[u][j][1]=max(dp[son][j-1][0],dp[son][j-1][1])+sm

g[u][j][0]=max(g[son][j][0],g[son][j][1])

g[u][j][1]=max(g[son][j-1][0],g[son][j-1][1])+sm+p[fa]-p[son]

复杂度O(n*v)

 

CF1540B Tree Array

利用期望的线性

算出每一个逆序对的概率,求和为期望

考虑怎么计算一个逆序对的概率

定义dp[i][j]为距离a为i b为j的概率

dp[i][j]=(dp[i-1][j]+f[i][j-1])/2

 

 

CF601C Kleofáš and the n-thlon

dp[i][j]为到第i场,有j分的期望

dp[i][j]=1/(m-1)* (\sum dp[i-1][j-k])

ans=(m-1)*(\sum dp[n][i]+1)

用前缀和简单优化一下

 

posted @ 2022-07-20 17:20  bootpuss  阅读(40)  评论(2编辑  收藏  举报