12月17号

        这三天继续研究概率dp的题,首先做的是Hdu 4035 Maze这道题,题意是在一个树形迷宫中,以房间为节点。有n间房间,每间房间存在陷阱的概率为ki,存在出口的概率为ei,如果这两种情况都不存在(概率为pi),那么只能做出选择走向下一个房间也可能会走向上一个房间。根节点为1,当遇到陷阱时必须返回到根节点1处重新开始,当遇到出口时,走出迷宫。问从开始到走出迷宫所做出选择次数的期望值。

首先定义状态dp[i]表示在节点 i 处直到走出迷宫的选择次数期望值。

状态转移方程为dp[i]=ki*dp[1]+(1/m)*pi*和号(dp[son]+1)(i为叶子节点)

dp[i]=ki*dp[1]+(1/m)*pi*(dp[father]+1)+(1/m)*pi*和号(dp[son]+1)(i为非叶子节点)

化简得dp[i]=ki*dp[1]+(1/m)*pi*dp[father]+(1/m)*pi*和号dp[son]+pi  显然,dp[i]都与dp[1]有关,另dp(i)=A(i)*dp[1]+B[i]*dp[father]+C[i]  

(1-(pi/m)*和号A[son])dp(i)=(ki+(pi/m)和号A[son])*dp[1]+(pi/m)*dp[father]+(pi/m)*C[son]+pi  

dp[1]=C[1]/(1-A[1]) 即为答案。如果A[1]=1就是无解。

HDU 3853 LOOPS这个题,题意是迷宫是一个R*C的布局,每个格子中给出停留在原地,往右走一个,往下走一格的概率,起点在(1,1),终点在(R,C),每走一格消耗两点能量,求出最后所需要的能量期望。用dp[i][j]记录从i,j出发到终点所需期望,map[i][j][k],记录每格三种状况的概率,得递推公式dp[i][j]=dp[i][j+1]*mat[i][j][3]+dp[i+1][j]*mat[i][j][2];          dp[i][j]=dp[i][j]/(1-map[i][j][0])。最后得dp[1][1]为答案。

POJ 2151 Check the difficulty of problems这道题,题意是ACM比赛中,共M道题,T个队,p[i][j]表示第i队解出第j题的概率 问 每队至少解出一题且冠军队至少解出N道题的概率。先求每个人他一道题都不会做的概率,于1作差,得得到至少有一题的概率,  再求至少做出N题的概率,  用dp[k][i][j]表示k个人前i题做出了j题的概率,用p[k][i]为第k个人做出了第i题的概率那么状态转移方程就是dp[k][i][j]=dp[k][i-1][j]*(1-p[k][i])+dp[k][i-1][j-1]*p[k][i]。

Codeforces  148D Bag of mice这道题,题意是一个袋子里面有w个白色老鼠,b个黑色老鼠。公主和龙每一轮从袋子中随机选出一个老鼠,不放回。谁先选到白色老鼠谁获胜,然后龙每一次从袋子中选老鼠的时候,会随机从袋子中跑掉一个老鼠。如果两个人都没有人选到白色老鼠,龙获胜。公主先选。问公主赢的概率。

用dp[i][j]表示现在轮到王妃抓时有i只白鼠,j只黑鼠,公主赢的概率。

首先dp[0][0]=0,dp[i][0]=1,dp[0][i]=0,dp[i][1]=i/(i+1)。

状态转移方程dp[i][j]=i/(i+1)+j/(i+j)*(j-1)/(i+j-1)*((j-2)/(i+j-2)*dp[i][j-3]+i/(i+j-2)*dp[i-1][j-2])。

最后dp[w][b]为答案。

然后请假五天,下一周星期四星期五考试,要准备一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值