UVa 10693 Traffic Volume (数学&物理模型)2014-04-26 csdn博客 synapse710693 - Traffic VolumeTime limit: 3.000 secondshttp://uva.onlinejudge.org/index.php? option=com_onlinejudge&Itemid=8&category=467&page=show_problem&problem=16 34

 In the picture below (or above depending on HTML response :)) you can see a street. It has infinite number of cars on it. The distance between any two consecutive cars is 
d, length of each car is 
L and the velocity of each car is 
v. The volume of cars through a road means the number of cars passing through a road in a specific amount of time. When the velocity is constant, 
d must be minimum for the volume of cars passing through the road to be maximal. In our model when the velocity of all the cars is 
v then the minimum possible value of 
d is 
v/(2f) (The more the car velocity the more distance you need to bring down your velocity to zero). Here 
f is the deceleration due to break.Keeping this model in mind and given the value of 
L and 
f your job is to find the value of 
v for which the volume of traffic through the road is maximal.InputThe input file contains several lines of input. Each line of input contains two integers 
L (0<L<=100) and 
f(0<f<=10000). The unit of 
L is meter and the unit of 
f is meter/second. The input is terminated by a single line whose value of 
L and 
f is zero.OutputFor each line of input except the last one produce one line of output. Each line contains two floating-point number 
v and 
volume separated by a single space. Here 
v is the velocity for which traffic flow is maximal and 
volume is the maximum number of vehicles (of course it is a fraction) passing through the road in an hour. These two floating points should have eight digits after the decimal. Errors less than 
1e-5 will be ignored.
Sample Input    Output for Sample Input
首先要使每辆车通过某个点的所用时间最少,即(l+v*v/2f)/v=l/v+v/2f最少,所以当v=sqrt(2fl) 时满足题意。完整代码:
/*0.009s*/#include<cstdio>#include<cmath>int main(void){int l, f;while (scanf("%d%d", &l, &f), l){f <<= 1;printf("%f %f
", sqrt(l * f), 1800 * sqrt((double)f / l));}return 0;}