题目
枫落被邪恶的刘雨凢传送到了一个一维的直线上。这个直线上有一个唯一的传送门可以使枫落逃离刘雨凢的掌控,而在这条直线上的行动有独特的规则。
初始枫落所在的坐标为 x,传送门的坐标为 y。
在这条直线上行动的具体的规则如下:
∙∙直线有一段区间,称之为“跳跃区间”。
∙∙枫落每次可以选择跳跃区间内的任意一个整数坐标点,然后跳跃到与该坐标点对称的坐标上。
已知跳跃区间固定,跳跃次数不限。现在枫落想知道他最终能否到达传送门,逃离刘雨凢的掌控。如果能,输出“YES”,否则输出“NO”
输入描述
cin>>x>>y>>l>>r;
题目链接
代码思路
#include<iostream>
#include<algorithm>
#include<map>
#include<cmath>
using namespace std;
const int N = 1e6+10;
//long long a[N];
int main()
{
int t;
cin >> t;
while(t--)
{
int x,y,l,r;
cin >> x >> y >> l >> r;
if(l == r)
{
if(abs(x-l) == abs(y-l)) cout << "YES" << endl;
else cout << "NO" << endl;
}
else
{
if(abs(x)%2 == abs(y)%2) cout << "YES" << endl;
else cout << "NO" << endl;
}
}
}