您的位置:首页 > 运维架构

hdu 4405 Aeroplane chess (期望dp入门)

2016-03-10 21:10 459 查看
http://acm.hdu.edu.cn/showproblem.php?pid=4405

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
using namespace std;

const int mx=100000+10;
int v[mx];
double dp[mx];

int main()
{
int n,m,x,y,i,j;
while (cin>>n>>m)
{
memset(v,0,sizeof(v));
memset(dp,0,sizeof(dp));
if (!n&&!m) return 0;
while (m--)
{
cin>>x>>y;
v[x]=y;
}
for (i=n-1;i>=0;i--)
{
if (v[i]) {dp[i]=dp[v[i]];continue;}
for (j=i+1;j<=i+6;j++)
dp[i]+=(dp[j]+1)/6.0;
}
printf("%.4lf\n",dp[0]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: