记录编号 195920 评测结果 AAAAA
题目名称 [NOIP 2002]自由落体 最终得分 100
用户昵称 Gravatarliu_runda 是否通过 通过
代码语言 C++ 运行时间 0.001 s
提交时间 2015-10-20 10:51:20 内存使用 0.29 MiB
显示代码纯文本
#include<cstdio>
#include<cmath>
using namespace std;
double h,s1,v,l,k;
int n;
bool touched(int num){
	double t1=0;
	if(h>k)
		t1 = sqrt(0.2*(h-k));//小球落到与车顶同一高度用时
	double d1 = l+s1-t1*v;//到车顶高度车尾位置
	double t2 = sqrt(0.2*h);//落地用时
    double d2 = s1-t2*v;//落地时车头位置

	if(d1>=num&&d2<=num)return true;
	else return false;
	//若可接受,t1-t2内小车经过num处
}
int main(){
	freopen("freefaller.in","r",stdin);freopen("freefaller.out","w",stdout);
	int sum = 0;

	scanf("%lf %lf %lf %lf %lf %d",&h,&s1,&v,&l,&k,&n);
	s1-=0.00001;l+=0.00002;k+=0.00001;//调整初始数据,标准改为与小车接触
	for(int i = 0;i<n;++i){
		if(touched(i))sum++;
	}
	printf("%d",sum);
	fclose(stdin);fclose(stdout);
	return 0;

}