【UVA2230】过河

题意

A,B相距D,A,B间有n条河,河宽Li,河的流向完全随机,每条河上有一个速度为vi的船,在河上来回行驶,每条河离A的距离为pi,现在求从A到B时间的期望,步行速度始终为1

分析

因为河的流向完全随机,所以可能等船也可能不等船,等船+过河的时间是3L/V,不等船过河的时间是L/V,所以过所有河的期望时间是∑2*Li/Vi

最后在加上走路时间D-∑Li

代码

#include<bits/stdc++.h>  
using namespace std;  
int n,cas;  
double p,l,v,D;  
int main()  
{  
    while(scanf("%d%lf",&n,&D)&&(n||D))  
    {  
        for(int i=1;i<=n;i++)  
        {  
            scanf("%lf%lf%lf",&p,&l,&v);  
            D=D-l+l*2.0/v;  
        }  
        printf("Case %d: %.3f\n\n",++cas,D);  
    }  
}  

 

posted @ 2018-10-30 19:59  WJEMail  阅读(139)  评论(0编辑  收藏  举报