题目大意:
给你两个点,和一个基本移动距离(x,y),问你是否可以通过移动若干次从一个点移动到另一个点。
有四种移动方式:
(a,b)->(a+x,b+y);
(a,b)->(a+x,b-y);
(a,b)->(a-x,b+y);
(a,b)->(a-x,b-y);
代码:
#include<bits/stdc++.h>
using namespace std;
int x,y,x2,y2,a,b;
int main()
{
scanf("%d%d%d%d%d%d",&x,&y,&x2,&y2,&a,&b);
int flag=1;
if(abs(x-x2)%a==0&&abs(y-y2)%b==0)
{
int t1=abs(x-x2)/a;
int t2=abs(y-y2)/b;
if(abs(t1-t2)%2==0)
{
printf("YES");
flag=0;
}
}
if(flag==1)printf("NO");
}