AT_abc459_g [ABC459G] Golf 2
题目描述
给定整数 $A, B, X, Y$。
在一个二维平面上放置有一个棋子。最初,棋子位于坐标 $(0,0)$。
你可以进行如下操作若干次(也可以一次不做):
- 设当前位置为 $(x, y)$,可以将棋子移动到满足以下条件之一的 $(x', y')$:
- $|x - x'| = A$ 且 $|y - y'| = B$
- $|x - x'| = B$ 且 $|y - y'| = A$
判断是否能够将棋子移动到坐标 $(X, Y)$,如果可以,求出所需操作的最小次数。
有 $T$ 组测试数据,请依次解决每一组。
输入格式
输入由标准输入给出,格式如下:
> $T$
> $\text{case}_1$
> $\text{case}_2$
> $\vdots$
> $\text{case}_T$
第 $i$ 组测试数据 $(1 \le i \le T)$ 以如下格式给出:
> $A$ $B$ $X$ $Y$
输出格式
按顺序输出每组测试数据的答案,每行一个。
如果可以将棋子移动到 $(X, Y)$,输出最小操作次数;否则输出 $-1$。
说明/提示
### 样例解释 1
考虑第一组测试数据。
你可以按如下顺序移动棋子:从 $(0,0)$ 到 $(1,2)$,再到 $(-1,1)$,最后到 $(1,0)$,共三次操作即可将棋子移动到 $(1,0)$。
无法用少于三次的操作到达 $(1,0)$,因此第一行输出 $3$。
### 约束条件
- $1 \le T \le 2 \times 10^5$
- $1 \le A < B \le 10^6$
- $0 \le X, Y \le 10^6$
- 所有输入均为整数。
由 ChatGPT 5 翻译