UVA12230 過河 Crossing Rivers

題目描述

一我的天天須要從家去往公司,而後家與公司的道路是條直線,長度爲 \(D\)。 同時路上有 \(N\)條河,給出起點和寬度\(W_i\) , 過河須要乘坐速度爲\(V_i\) 的渡船; 船在河中的位置隨機,固定往返時間. 且該人在陸地上行走速度爲 \(1\) .求該人去公司的路途的指望時間。spa

輸入輸出樣例

輸入樣例#1:code

1 1
0 1 2
0 1
0 0

輸出樣例#1:io

Case 1: 1.000
Case 2: 1.000

思路:過一條河最壞用時爲\(3l/v\),即到河邊時船正好走了,最優用時爲\(l/v\),即到河邊是剛好遇上船。而後由於時間知足線性關係,因此平均指望用時爲\(2l/v\),而後再加上步行須要的用時便可,還有一個比較坑的地方是要輸出兩個換行符。class

代碼:di

#include<cstdio> 
#define dl double 
int n,js; 
dl ans,d,p,l,v; 
int main() { 
  while(scanf("%d%lf",&n,&d)==2) { 
    if(!d) break; 
    ans=0; 
    for(int i=1;i<=n;++i) { 
      scanf("%lf%lf%lf",&p,&l,&v); 
      d-=l; ans+=2*l/v; 
    }
    printf("Case %d: %0.3lf\n\n",++js,ans+d);
  } 
  return 0;
}
相關文章
相關標籤/搜索