WisKey的眼神

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2059    Accepted Submission(s): 625

Problem Description
WisKey的眼镜有500多度,所以眼神不大好,而且他有个习惯,就是走路喜欢看着地(不是为了拣钱哦^_^),所以大家下次碰见他的时候最好主动打下招呼,呵呵.
但是Rabbit总是喜欢扮神秘,一天WisKey去食堂排队等着买饭,突然收到一道短消息,是Rabbit发的,”呵呵,又看见你了,你没看到我吧”.WisKey马上拉长脖子扫描食堂,可是就是看不到,再发短信问Rabbit在哪,Rabbit回信曰”我已经在寝室了”.WisKey无语....
假设食堂是个正方形,食堂中心坐标为(0,0),长度为2*L, WisKey保证在食堂内.
因为是吃饭高峰期,所以每个点上都站着人,当某些人处在同一直线上时就有可能被前面的人挡住.
聪明的ACMer请你帮帮WisKey,告诉他能不能看见Rabbit.
 
Input
输入L,sx,sy,px,py; L<=1000,sx,sy是WisKey的坐标,px,py是Rabbit的坐标.
以L=0为结束.
 
Output
对于每组输入数据,能看见输出”Yes”,看不见输出”No”.
Rabbit不在食堂输出”Out Of Range”.
 
Sample Input
5 0 0 1 1
5 0 0 2 0
5 0 0 6 6
5 0 0 -1 -1
0
 
Sample Output
Yes
No
Out Of Range
Yes
 
Source
 
Recommend
lcy   |   We have carefully selected several similar problems for you:  1557 1230 1591 1584 1279 
 

最后知道真相的我眼泪掉下来...

简单数学几何题:

方法1: 遍历两点间的点,判断是否存在整数点。(这种搞了挺久..发现很难写对..最后看Ice_crazy的)

方法2:做一个直角三角形,两直角边的最大公约数不唯一则存在整数点。

有个小疑问,为什么5 0 0 1 0 要输出No呢,不是挡不到吗

 //218MS     204K    855B     G++
#include<stdio.h>
int abs(int a)
{
return a<?-a:a;
}
int main(void)
{
int l,x1,x2,y1,y2;
while(scanf("%d",&l)!=EOF && l)
{
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
if(abs(x2)>l || abs(y2)>l){
puts("Out Of Range");continue;
}
if(x1==x2 || y1==y2){
puts("No");continue;
}
int c1=(y2-y1)*x1;
int c2=(x2-x1)*y1; int ln=x1>x2?x2:x1;
int rn=x1>x2?x1:x2;
int flag=;
for(int i=ln+;i<rn;i++){
double y=(((y2-y1)*i-c1+c2)*1.0/(x2-x1));
if((int)y==y){
flag=;break;
}
}
if(flag) puts("Yes");
else puts("No");
}
return ;
} /*
5 0 0 1 1
5 0 0 2 0
5 0 0 6 6
5 0 0 -1 -1 5 0 0 0 2
5 0 0 1 0
5 0 0 0 1
*/
 #include<stdio.h>
int gcd(int a,int b)
{
if(a%b==) return b;
else return gcd(b,a%b); }
int abs(int a)
{
return a<?-a:a;
}
int main(void)
{
int l,x1,x2,y1,y2;
while(scanf("%d",&l),l)
{
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
if(abs(x2)>l || abs(y2)>l){
puts("Out Of Range");continue;
}
if(x1==x2 || y1==y2){
puts("No");continue;
}
int a=abs(x1-x2);
int b=abs(y1-y2);
if(a<b){
int temp=a;a=b;b=temp;
}
if(gcd(a,b)==) puts("Yes");
else puts("No");
}
return ;
}

hdu 1577 WisKey的眼神 (数学几何)的更多相关文章

  1. HDU 1577 WisKey的眼神

    WisKey的眼神 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  2. HDU 1577 WisKey的眼神 (找规律 数学)

    题目链接 Problem DescriptionWisKey的眼镜有500多度,所以眼神不大好,而且他有个习惯,就是走路喜欢看着地(不是为了拣钱哦^_^),所以大家下次碰见他的时候最好主动打下招呼,呵 ...

  3. hdu 1115 Lifting the Stone (数学几何)

    Lifting the Stone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  4. WisKey的眼神

    WisKey的眼神 Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total Sub ...

  5. hdu 6097 Mindis(数学几何,圆心的反演点)

    Mindis Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Subm ...

  6. 2017"百度之星"程序设计大赛 - 复赛1003&&HDU 6146 Pokémon GO【数学,递推,dp】

    Pokémon GO Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  7. HDU 5810 Balls and Boxes 数学

    Balls and Boxes 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5810 Description Mr. Chopsticks is i ...

  8. ACM: FZU 2110 Star - 数学几何 - 水题

     FZU 2110  Star Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u  Pr ...

  9. poj 1701【数学几何】

    The area Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

随机推荐

  1. HackerRank "Angry Children 2"

    Fun one! A combination of Greedy and DP. The solution sparkled in my mind - I almost lost it.. Greed ...

  2. English sentence

    For a better environment, we should teach our children to put litter/garbage/trash into dustbin/dust ...

  3. 原生js 实现购物车价格和总价 统计

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. 黄聪:Wordpress二级域名共享用户cookie出现错误解决方案及WP的Cookie机制

    在若干年以前,我刚开始折腾Wordpress没多久的时候,就自己摸索过 多个Wordpress网站共享一份数据表的实现方法 .这种看起来好像很高大上的类SSO功能,能够给用户在多个网站之间提供快速.无 ...

  5. 一篇关于SpringMVC 传统文件上传的方法

    一.界面效果 二.html代码 <legend>上传APK文件</legend> <form action="<%=basePath%>/apks/ ...

  6. volley_之2

    一开始会不会觉得有点怔,为什么只需要将请求添加到队列中,不需要去发送请求吗?当然是要的,只是这一切都被封装在Volley后面而已. 我们先来看一下隐藏在Volley后面的这个架构是怎么样的吧,如下图: ...

  7. 配置SQL Server 2005 远程连接(转)

    方法如下:  一.为 SQL Server 2005 启用远程连接1. 单击"开始",依次选择"程序"."Microsoft SQL Server 2 ...

  8. c语言实现二维数组排序,一个4*5的数组,要求每行都进行升序排列,并求出每行的平均值。

    #include<stdio.h>#define N 5#define M 4void main(){ int x,i,j,k,t,a[M][N]; float sum=0.0; floa ...

  9. django时区设置

    1. 创建web目录 django-admin.py startproject mysite 2. 启动web服务 python manage.py runserver python manage.p ...

  10. JNI日志调试LOG和中文乱码

    添加日志: 1. 增加log支持. Android.mk文件增加LOCAL_LDLIBS += -llog 2. C代码中增加(放在最前面) #include <android/log.h> ...