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 翻译