题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6559 参考:https://www.cnblogs.com/Dillonh/p/11196418.html 题意:给定圆锥,以及一个点位置和初始速度,求点和圆锥相撞时间。保证点和圆锥可以相撞。 题解:解方程,详见参考博客,注意找出的两个点要check一下,并取最小值。
#include
using namespace std;
#define ll long long
const double eps=1e-8;
const ll inf=0x3f3f3f3f3f3f3f3f;
double r,h,x,y,z,vx,vy,vz;
bool check(double t){
double xx=x+vx*t;
double yy=y+vy*t;
double zz=z+vz*t;
double R=(h-zz)*r/h;
return sqrt(xx*xx+yy*yy)-R
关注
打赏
热门博文