【概率与期望】hdu 3366 Passage

通道:http://acm.hdu.edu.cn/showproblem.php?pid=3366

题意:有N条道路可以走出去,一条道路既没有碰到土匪也没有碰到死胡同从而走出的概率是Pi;碰到土匪而没有走出去的概率的概率为Qi( 0< = Qi < = 1-Pi),如果碰到土匪,那么必须得付1块钱并且还得返回;这条路是死胡同的概率是1-Pi-Qi,若是死胡同则必须返回。这个人最初有M 块钱。假设这个人采取最优策略,求他走出城堡的概率。

思路:3种方案:顺利走出去,碰到土匪,碰到死胡同,且资金有限的话,那么最优策略应该选择 P/Q 最大的道路走。所以先按 P/Q 从大到小排序,然后dp.

  dp[i][j]表示选择第i条道路还有j块钱时,最后走出去的概率。
  那么
  dp[i][j] += node[i].p; //直接从道路i走出去
  dp[i][j] += dp[i+1][j-1]*node[i].q; //从道路i+1走出去,在道路i遇到土匪
  dp[i][j] += dp[i+1][j]*(1-node[i].p-node[i].q); //从道路i+1走出去,在道路i遇到死胡同

代码:https://github.com/Mithril0rd/Rojo/blob/master/hdu3366.cpp

TAG:概率dp

posted @ 2014-10-27 19:56  mithrilhan  阅读(413)  评论(0编辑  收藏  举报