题目描述:
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