杭电ACM 1174
//身高,又称身长,是指一个人从头顶到脚底的身体长度.
//杭电ACM 1174 爆头
#include<iostream>
#include<cmath>
using namespace std;
#define eps 1e-6
struct Node
{
double x,y,z;
}line[2];
double chaji(Node&a,Node&b)//计算两个向量的叉积
{
double a1=a.x;
double a2=a.y;
double a3=a.z;
double b1=b.x;
double b2=b.y;
double b3=b.z;
double c1=a2*b3-a3*b2;
double c2=a3*b1-a1*b3;
double c3=a1*b2-a2*b1;
return sqrt(c1*c1+c2*c2+c3*c3);
}
int main()
{
double h1,r1,x1,y1,z1;//分别表示土匪的身高,头部半径以及所站的位置。
double h2,r2,x2,y2,z2,x3,y3,z3;//h2,r2,x2,y2,z2,x3,y3,z3,
//分别表示警察的身高,头部半径,所站位置,以及枪头所指方向的方向向量。
int T=0;
cout<<"Enter T pleace: ";
while(cin>>T)
{
for(int i=0;i<T;i++)
{
cout<<"输入土匪的身高,头部半径以及所站的位置: "<<endl;
cin>>h1>>r1>>x1>>y1>>z1;
cout<<"输入警察的身高,头部半径,所站位置,以及枪头所指方向的方向向量: "<<endl;
cin>>h2>>r2>>x2>>y2>>z2>>x3>>y3>>z3;
line[0].x=x3;
line[0].y=y3;
line[0].z=z3;
line[1].x=x1-x2;
line[1].y=y1-y2;
line[1].z=z1+h1-r1-(z2+h2*0.9-r2);
double d=chaji(line[0],line[1]);
d/=sqrt(x3*x3+y3*y3+z3*z3);
if(d-r1<eps)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
}
return 0;
}
杭电ACM 1174相关推荐
- 【杭电ACM】1097 A hard puzzle
[杭电ACM]1097 A hard puzzle http://acm.hdu.edu.cn/showproblem.php?pid=1097 先用int手写了算法结果竟然wrong answer ...
- 杭电ACM刷题(1):1002,A + B Problem II
最近忙于考试复习,没有多少可供自己安排的时间,所以我利用复习之余的空闲时间去刷刷杭电acm的题目,也当对自己编程能力的锻炼吧. Problem Description I have a very si ...
- 杭电acm2151题java的解法,杭电ACM题型分类
杭电ACM题型分类 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.1048.1 ...
- 杭电acm a+b问题
杭电acm 1000 a+b问题代码 int main() { int a,b; for(;~scanf("%d%d",&a,&b);printf("%d ...
- 杭电ACM(HDUOJ)试题分类
杭电ACM试题分类 第一篇 1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最 ...
- 杭电acm第2304题答案c语言,【转】杭电ACM试题分类
注:网上搜的 第一篇 1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 ...
- 杭电ACM题目类型整理
版权声明:(╯3╰) 转载请注明: http://blog.csdn.net/bat67 杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 10 ...
- 杭电acm 2022
海选女主角 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- 杭电acm的第1000题c语言解法
首先我选择的是c语言的解法,开始是输入如下的答案: #include "stdio.h" int main(void) { long long a,b; scanf("% ...
最新文章
- Java项目:学生考勤管理系统(java+SSM+Poi导出+Easyui+JFreeChart+maven+mysql)
- 将SAP订单以XML格式输出
- 哈希表 - (代码、分析 )
- minicom/picocom/cutecom/putty 安装与使用教程
- maven多模块项目,多web合并项目使用心得
- SpringBoot启动报错(一篇教你如何处理mapper绑定问题) BindingException: Invalid bound statement (not found)
- R语言使用epiDisplay包的lroc函数可视化logistic回归模型的ROC曲线并输出诊断表、输出灵敏度、1-特异度、AUC值等、设置auc.coords参数指定AUC值在可视化图像中的位置
- 如何用计算机表达无理数,利用泰勒级数计算无理数和以及其他任意无理数的近似值.doc...
- centos设置root免密自动登陆
- IT女神说自然语言处理(1)----LDA
- SEM竞价推广创意快速撰写的方法,智能创意制作
- 零基础做油管搬运二创项目的正确方式,短视频小白玩家套利的可能
- 成都艾司博讯:什么是拼多多网店的品质退款率?
- 如何对音频文件进行剪辑
- puppy linux中文设置,使用puppyLinux心得
- 研磨设计模式 之 访问者模式(Visitor)2——跟着cc学设计系列
- 树莓派4B ubuntu20.04 python驱动光电传感器实现计数 教程
- ajax 下载文件 返回blob类型
- 网工职业发展方向之网管
- MongoDB利用$elemMatch对内嵌文档进行多条件查询
热门文章
- CCF 会议检索(近期可投)
- word论文页码的设置(封面无编号、目录罗马数字和正文阿拉伯数字)
- 响应式微服务_低风险整体式微服务演进第三部分
- JavaScript数组,函数
- 移动电源解锁亚马逊要做62133和60950测试报告你知道吗?
- 企业如何进行融资(企业融资的6大正确方式)
- leetcode 1662. Check If Two String Arrays are Equivalent(python)
- SQLi lab: Equivalent to information schema on Oracle
- 【python】学会这八个自动化脚本,摸鱼的借口那不就来啦~
- 一起学Pandas系列基础篇---loc和iloc