HDU - 2018杭电ACM集训队单人排位赛 - 1 - Problem C. 狙击敌人

简介: HDU - 2018杭电ACM集训队单人排位赛 - 1 - Problem C. 狙击敌人

Problem C. 狙击敌人

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)

Total Submission(s): 256    Accepted Submission(s): 76




Problem Description

小明有一次运气贼好,跳在一个小野区,突然掉了一个空投,直接砸在他的脸上,可把他乐坏了。走近一打开补给包,AWM+3级头+8倍镜+20发.300马格南,令人窒息!

小明拿着AWM,立即往山上跑,想用这把传说中的枪,爆敌人的头。不一会,小明看到一个挂机仔,躲在一块石头后面。我们将小明的枪口和挂机仔的头看成二维平面上的两个点(x1,y1),(x2,y2),小明瞄准后开了一枪,子弹按照(dx,dy)的方向运动(即每毫秒子弹的x坐标+dx,y坐标+dy),如果子弹的运动轨迹能经过(x2,y2),那么子弹就能打中敌人的头,我们来预测一下小明能否用这把AWM一枪爆掉敌人的头,如果能,输出”YES”,否则输出”NO”。

Input

多组测试数据,首先第一行一个整数T(1≤T≤20),代表测试数据组数。

每组测试数据有 6 个整数 x1,y1,x2,y2,dx,dy,小明的枪口坐标为 (x1,y1), 敌人的坐标为(x2,y2),子弹的运动方向为 (dx,dy),保证枪口坐标和敌人的坐标不同,1 ≤ x1,y1,x2,y2 ≤ 1000,−1000≤dx,dy≤1000。

Output

如果小明能用这把AWM一枪爆掉敌人的头,输出”YES”,否则输出”NO”。

Sample Input

2

1 1 2 2 2 2

1 1 3 1 0 1

Sample Output

YES

NO

解题思路:

1、注意 double “==” 写法。

2、缩放法。


AC 代码


/

#include<bits/stdc++.h>
#include<cmath>
#define mem(a,b) memset(a,b,sizeof a);
#define INF 0x3f3f3f3f
using namespace std;
typedef long long ll;
int main()
{
    int T; scanf("%d",&T);
    double x1,y1,x2,y2,dx,dy,tx1,ty1;
    while(T--)
    {
        cin>>x1>>y1>>x2>>y2>>dx>>dy;
        dx/=1000; dy/=1000;
//        printf("dx,dy == %f %f\n",dx,dy);
        int flag=0;
        for(int i=0;i<1000100;i++)
        {
            tx1=x1+i*dx, ty1=y1+i*dy;
            if(fabs(tx1-x2)<1e-5&&fabs(ty1-y2)<1e-5)
            {
                flag=1; break;
            }
        }
        puts(flag?"YES":"NO");
    }
    return 0;
}
/* 测试数据
30
1 1 1000 1000 1 1
2 2 1 1 -2 -2
1 1 3 1 0 1
1 1 1000 1000 1 1
1 1 1000 1000 1000 1000
*/
目录
相关文章
|
9月前
|
JSON 数据格式
星系炸弹(蓝桥杯)
星系炸弹(蓝桥杯)
|
机器学习/深度学习
带你轻松拿捏N皇后问题
要求任何两个皇后不同行、不同列,也不在同一 条斜线上
153 0
带你轻松拿捏N皇后问题
|
人工智能 算法 数据处理
英雄联盟胜负预测--简易肯德基上校
英雄联盟胜负预测--简易肯德基上校
英雄联盟胜负预测--简易肯德基上校
|
机器学习/深度学习 安全
算法每日一题——第五天——笨拙的手指
算法每日一题——第五天——笨拙的手指
算法每日一题——第五天——笨拙的手指
|
算法
每日一题冲刺大厂 第二十三天 奶牛晒衣服
大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题为了让大家练到各种各样的题目,熟悉各种题型,一年以后,蜕变成为一个不一样的自己!
147 0
|
算法 关系型数据库 定位技术
为什么订餐不会凉凉和牛顿发现万有引力有关
希望通过本次课题,与大家探讨订餐系统的技术难点及提出解决方案。
为什么订餐不会凉凉和牛顿发现万有引力有关
|
Java
HDU - 2018杭电ACM集训队单人排位赛 - 1 - Problem E. 逃离机场
HDU - 2018杭电ACM集训队单人排位赛 - 1 - Problem E. 逃离机场
163 0
|
Java
HDU - 2018杭电ACM集训队单人排位赛 - 3 - Problem H. Dominoes
HDU - 2018杭电ACM集训队单人排位赛 - 3 - Problem H. Dominoes
135 0
|
机器学习/深度学习 算法 Java
HDU - 2018杭电ACM集训队单人排位赛 - 3 - Problem B. Bullet
HDU - 2018杭电ACM集训队单人排位赛 - 3 - Problem B. Bullet
184 0