您的位置:首页 > 其它

Uva - 12230 Crossing Rivers (数学期望)

2015-06-20 14:11 190 查看
你住在村庄A,每天需要过很多条河到另一个村庄B上班,B在A的右边,所有的河都在A,B之间,幸运的是每条船上都有自由移动的自动船,

因此只要到达河左岸然后等船过来,在右岸下船,上船之后船的速度不变.现在问从A到B的期望时间是多少,假设在出发时船的位置都是

随机分布.人在 陆地上行走的速度为1.

根据数学期望的线性,过每条河的时间为L/v(到河边船刚好开)到3L/v(到河边船刚好开走)的均匀分布,因此期望过河时间为 (L+3L/v)/2=(2*L/v) 加上 D-sum(L) .

#include <cstdio>
#include <cstring>
int main()
{
int n,d,p,l,v,s,j=1;
double sum;
while(~scanf("%d%d",&n,&d))
{
if(n==0&&d==0) break;
sum=0;
s=0;
for(int i=0;i<n;i++)
{
scanf("%d%d%d",&p,&l,&v);
sum+=2.0*l/v;
s+=l;
}
printf("Case %d: %.3lf\n\n",j++,sum+(d-s));
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: