HDOJ 3853 LOOPS (DP 기대 입문)
4001 단어 양 천
기대 감 이 상태 에 대한 전이 가 어렵 기 를 바 랍 니 다. 이 점 의 모든 다음 상 태 를 잘 고려 한 다음 에 그 확률 을 곱 한 다음 에 기대 * 자 확률 을 누적 해 야 합 니 다.그러면 아버지 가 원 하 시 는 것 이 나 옵 니 다. 공식 은 바로 E (aX + bY) = a * E (X) + b * E (Y) 입 니 다.
ps: 수학 을 잘 못 하면 경상 이에 요.
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int r,c;
double dp[1005][1005],p[1005][1005][4];
int main()
{
while(scanf("%d%d",&r,&c)!=EOF)
{
for(int i=1;i<=r;i++)
{
for(int j=1;j<=c;j++)
{
for(int k=1;k<=3;k++)
scanf("%lf",&p[i][j][k]);
}
}
dp[r][c]=0;
for(int i=r;i>=1;i--)
{
for(int j=c;j>=1;j--)
{
if(i==r&&j==c||p[i][j][1]==1)
continue;
dp[i][j]=(p[i][j][2]*dp[i][j+1]+p[i][j][3]*dp[i+1][j]+2)/(1.0-p[i][j][1]);
}
}
printf("%.3f
",dp[1][1]);
}
return 0;
}