hdu 3853 全期望公式 概率dp

2021-06-28 23:44:01 字數 871 閱讀 3104

e[n][m] = 0;

三種運動的概率分別是a,b,c

e[i][j] = a*e[i][j] + b*e[i][j+1] + c*e[i+1][j]

->e[i][j] = ( b*e[i][j+1] + c*e[i+1][j] )/(1-a)

如果1-a近似到0,那麼說明只能到它本身,所以它不能到達終點,所以它的期望是無窮,也就是不能到達,要進行特判,賦值為0

#include #include #include #include #include #define max 1007

#define eps 1e-8

using namespace std;

double dp[max][max];

double p[max][max][4];

int n,m;

void dfs ( int x , int y )

if ( dp[x][y] > -0.5 ) return;

dp[x][y] = 2.0;

if ( y < m && dp[x][y+1] < -0.5 ) dfs ( x , y+1 );

dp[x][y] += dp[x][y+1]*p[x][y][2];

if ( x < n && dp[x+1][y] < -0.5 ) dfs ( x+1 , y );

dp[x][y] += dp[x+1][y]*p[x][y][3];

if ( fabs ( 1.0 - p[x][y][1] ) < eps ) dp[x][y] = 0.0;

else dp[x][y] /= ( 1.0 - p[x][y][1] );

}int main ( )

}

HDU 3853 期望概率DP

期望概率dp簡單題 從 1,1 點走到 r,c 點,每走一步的代價為2 給出每乙個點走相鄰位置的概率,共3中方向,不動 x,y x y p x y 0 右移 x y x y 1 p x y 1 左移 x y x 1 y p x y 2 問最後走到 r,c 的期望 dp i j 為從 i j 點走到 ...

hdu 3853 概率dp入門

題意 在一塊r c的棋盤上,從位置 1,1 的地方走到位置為 r,c 的地方,每走一步的代價為2,在位置 i,j 可能會走到位置 i 1,j i,j 1 以及 i,j 題目中給出每個點走向下乙個方向的概率,求花的總代價。分析 一道很基礎的概率dp,dp i j 表示的是從位置 i,j 走到 r,c ...

HDU 3853 向下向右找出口問題 期望dp

題意 初始狀態在 1,1 的位置,目標是走到 n,n 每次只能向下向右或者不移動,已知在每個格仔時這三種情況的概率,每移動一步消耗2的魔力,求走到終點的使用的魔力的期望。分析 簡單的期望dp,套用之前的框架,但是這題不是 1,而是 2,因為每次多加的那個數字是走一步的消耗,這裡是2!注意p1 i j...