hdu 1174 爆头(计算几何)
来源:互联网 发布:网络大婊姐是什么意思 编辑:程序博客网 时间:2024/09/21 09:18
本题主要是头这个球展开的,首先要找到这个头心的高的z坐标,z=z+h-r;
B到直线AC的距离就是|AB叉乘AC|/|AC|
向量a=(a,b,c)
向量b=(d,e,f)
则,叉积=(bf-ce,-(af-cd),ae-bd)
本题,警察的坐标位置用A表示,歹徒用B表示,C’是方向向量,
C是与A是直线方程上的点,则向量坐标满足AC=C’,所以歹徒到
直线的距离是AB叉乘AC/|AC|,此距离与歹徒头的半径作比较;
#include"stdio.h"
#include"math.h"
int main()
{
int m;
double a,b,c,x,y,z,r1,r2,h1,h2,x1,x2,x3,y1,y2,y3,z1,z2,z3,d1,d2;
scanf("%d",&m);
while(m--)
{
scanf("%lf%lf%lf%lf%lf",&h1,&r1,&x1,&y1,&z1);
scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&h2,&r2,&x2,&y2,&z2,&x3,&y3,&z3);
z1=z1+h1-r1;
z2=z2+h2*0.9-r2;
a=x2-x1;b=y2-y1;c=z2-z1;
x=b*z3-c*y3;
y=-(a*z3-c*x3);
z=a*y3-b*x3;
d1=sqrt(x*x+y*y+z*z);
d2=sqrt(x3*x3+y3*y3+z3*z3);
if(d1/d2<=r2)
printf("YES\n");
else
printf("NO\n");
}
return 0;
}
- hdu 1174 爆头 (计算几何)
- hdu 1174 爆头(计算几何)
- Hdu 1174 爆头 计算几何问题
- HDU 1174 爆头 [计算几何]
- hdu-1174 爆头(计算几何)
- HDU 1174 爆头(三维计算几何)
- HDU 1174 爆头(几何---叉积)
- HDU 1174 爆头 几何
- HDU 1174 水几何计算
- hdu 2876 (计算几何)
- hdu 5733 (计算几何)
- HDU-4823(计算几何)
- HDU-1071(计算几何)
- hdu 3685 计算几何(好)
- hdu 1077 Catching Fish(计算几何)
- HDU 3272 - Mission Impossible(计算几何)
- hdu-5060(空间几何计算)
- hdu 5295 Unstable(计算几何)
- Android开源库集锦
- C++中extern “C”含义深层探索
- UIFont 自适应大小剧中对齐 设置字体 与字体效果预览
- gocv #pragma pack(1) 导致无法生成.gcda
- mysql information_schema作用介绍
- hdu 1174 爆头(计算几何)
- QT foreach 和 QTextCodec
- javascript中的this用法小结
- 了解Tengine,感觉不错
- 一个大学生创业者的“白日梦”项目
- 1025. PAT Ranking (25)
- java中的IO整理
- Excel简单操作
- 使用CSS 3创建不规则图形