现在的位置: 首页 > 综合 > 正文

hdu2603

2013年10月22日 ⁄ 综合 ⁄ 共 551字 ⁄ 字号 评论关闭

/*
分析:
    物理都忘得差不多了,一开始还真准备一步一步算呢,
但总感觉不对劲儿,囧~。于是,就反应过来了:
    计算出S=忽略天花板能到达的距离;然后列方程,计
算出轨道抛物线和天花板是否有交点,有两个交点的话,
S-=两个交点的距离。输出S即可。。。

                                               2012-10-03
*/

#include"stdio.h"
#include"string.h"
#include"math.h"
#define g 9.87
int main()
{
	double v,m,ang;
	double v_c,v_s;
	double a,b,c,dir;
	double ans;
	while(scanf("%lf%lf%lf",&v,&m,&ang)!=-1)
	{
		ang=ang*3.1415927/180;
		v_s=v*cos(ang);
		v_c=v*sin(ang);
		ans=v_s*(v_c/g+sqrt(2*(3+0.5*v_c*v_c/g)/g));

		a=g/2/v_s/v_s;
		b=-(v_c/v_s);
		c=0.5;
		dir=b*b-4*a*c;
		if(dir<0)	printf("%0.3lf\n",ans);
		else		printf("%0.3lf\n",ans-sqrt(dir)/a);
	}
	return 0;
}

抱歉!评论已关闭.