题目描述:
2 0 8 3 2 4 4 5 7 8 0 0
1.1667 2.3441
/*******************************************************************************/
/* OS : Linux fc20.x86_64 #1 SMP Tue Dec UTC 2013 x86_64 GNU/Linux
* Compiler : 4.8.2 20131212 (Red Hat 4.8.2-7) (GCC)
* Encoding : UTF8
* Date : 2014-04-02
* All Rights Reserved by alop.
*****************************************************************************/
/* Description: ***************************************************************
*****************************************************************************/
/* Analysis: ******************************************************************
*****************************************************************************/
/*****************************************************************************/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<vector>
using namespace std;
#define N 100005
int x[N],y[N],mp[N];
double dp[N];
int main()
{
//freopen("input.txt","r",stdin);
//freopen("output.txt","w",stdout);
int n,m;
while(cin>>n>>m&&(n||m))
{
int i=0;
memset(mp,-1,sizeof(mp));
memset(dp,0,sizeof(dp));
while(i++<m)
{
cin>>x[i]>>y[i];
mp[x[i]]=y[i];
}
for(i=n-1;i>=0;i--)
{
if(mp[i]!=-1)dp[i]=dp[mp[i]];
else
{
for(int j=1;j<=6;j++)
dp[i]+=dp[i+j];
dp[i]=dp[i]/6+1;
}
}
printf("%.4f\n",dp[0]);
}
return 0;
}
简单概率DP——hdu4405,布布扣,bubuko.com
原文地址:http://blog.csdn.net/alop_daoyan/article/details/24932709