最后两个点wa了,求助
查看原帖
最后两个点wa了,求助
1121287
wgl_and_gzy楼主2024/4/6 20:28

自我感觉思路没错

#include <bits/stdc++.h>
#define db double 
using namespace std;
int ans,n;
db h,s1,v,l,k;
db tt(db j)
{
	return sqrt(2 * j / 10);
}
int main()
{
	//freopen("free.in","r",stdin);
	//freopen("free.out","w",stdout);
	cin >> h >> s1 >> v >> l >> k >> n;
	db s2 = s1 + l;
	for(int i = 1;i <= n;i ++ )
	{
		db t1 = (s1 - i + 1 - 0.00001) / v; // 小车头到的时间
		db t2 = (s2 - i + 1 + 0.00001) / v; // 小车尾到的时间
		db t3 = tt(h - k);
		db t4 = tt(h);
		if(t3 >= t1 && t4 <= t2) ans ++ ;
		if(t3 <= t1 && t4 >= t2) ans ++ ;
		if(t3 <= t1 && t4 <= t2 && t4 >= t1) ans ++ ;
		if(t3 <= t2 && t3 >= t1 && t4 <= t2) ans ++ ;
	}
	cout << ans;
	return 0;
}

//5.0 9.0 5.0 2.5 1.8 5



2024/4/6 20:28
加载中...