HDU 2268 How To Use The Car (数学题)

题目

 

//做起来很艰辛,总结起来很简单。。。

//注意步行速度可能比车的速度快。。。。

//推公式要仔细,,,,

 

//一道对我来说很搞脑子的数学题,,,,,
//车先送第一个人上路,第二个人步行;中途第一个人下车步行,车回去接第二个人直接到终点
//L:第一个人步行的路程;
//T:总时间
//(c-L)*a/b+L+((L/a-L/b)/2)*(a+b)=c   -->>  L=2*a*c/(3*a+b)
//T=(c-L)/b+L/a

//坑啊,要比较车速快还是步行快!!!!采取不同方案。。。。。

//中途推出来了(案例顺利通过),交上去却wa,还以为精度问题或是超出了int,改了半天才发现推错了,,笨死拉,,,
//tmd,推数学公式真要仔细啊,一不小心就会出错。。。

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{
    double time,a,b,c;
    while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF)
    {
        if(a>=b)time=c*1.0/a;
        else {
            double L=2*a*c/(3*a+b);
            time=(c-L)/b+L/a;
        }
        printf("%.3lf\n",time);
    }
    return 0;
}
View Code

 

posted @ 2014-09-22 23:30  laiba2004  Views(169)  Comments(0Edit  收藏  举报