#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define GRAVITY 9.87f
#define PI 3.1415926
int main()
{
double v,m,a,t1,t2,distance,v1;
double solution(double a,double b,double c);
while(scanf("%lf%lf%lf",&v,&m,&a)!=EOF)
{
a=a*PI/180.0;
if(v*sin(a)*v*sin(a)/2.0/GRAVITY<=0.5) distance = solution(GRAVITY/2.0,-v*sin(a),3.0)*v*cos(a);
else
{t1=solution(-0.5*GRAVITY,v*sin(a),0.5);
v1=v*sin(a)-GRAVITY*t1;
t2=solution(0.5*GRAVITY,v1,3.5);
distance = v*cos(a)*(t1+t2);
}
printf("%.3lf\n",distance);
}
return 0;
}
double solution(double a,double b,double c)
{
double data,tt,t2,t;
data = b*b+4*a*c;
if(data<0) return 0;
else
{
tt=(-b+sqrt(data))/2/a;
t2=(-b-sqrt(data))/2.0/a;
if(tt>0&&t2>0) t=tt>t2?t2:tt;
else if(tt>0 ) t=tt;
else t=t2;
return t;
}
}
hdu 2603见鬼了,这久才过
最新推荐文章于 2017-07-08 14:57:21 发布