Codeforces 1332 A. Exercising Walk_bc


Codeforces 1332 A. Exercising Walk_bc_02

题意:

有一个点在 Codeforces 1332 A. Exercising Walk_bc_03,再给一个区域 Codeforces 1332 A. Exercising Walk_bc_04Codeforces 1332 A. Exercising Walk_bc_05,。现在给出a、b、c、d,分别表示这个点要向左走 Codeforces 1332 A. Exercising Walk_bc_06 步,向右走 Codeforces 1332 A. Exercising Walk_bc_07 步,向下走 Codeforces 1332 A. Exercising Walk_bc_08 步,向上走 Codeforces 1332 A. Exercising Walk_bc_09 步。现在问你是否可以满足题目的 Codeforces 1332 A. Exercising Walk_bc_10 步,且每一步走完后都不超出 Codeforces 1332 A. Exercising Walk_bc_04Codeforces 1332 A. Exercising Walk_bc_05 的范围。
就是几种情况判断即可,把各种情况考虑全。

AC代码:

int a, b, c, d;
int x, y, x1, yy, x2, y2;

int main()
{
int t;
sd(t);
while (t--)
{
sdd(a, b);
sdd(c, d);
sdd(x, y);
sdd(x1, yy);
sdd(x2, y2);
if (x1 == x2 && (a || b))
puts("No");
else if (yy == y2 && (c || d))
puts("No");
else if (a < b && (x + b - a) > x2)
puts("No");
else if (a > b && (x - (a - b)) < x1)
puts("No");
else if (c < d && (y + d - c) > y2)
puts("No");
else if (c > d && (y - (c - d)) < yy)
puts("No");
else
puts("Yes");
}
return 0;
}