#4986. Problem 2. Transforming Pairs

0

Problem 2. Transforming Pairs

Problem 2. Transforming Pairs

USACO 2025 February Contest, Platinum

回答 QQ(1≤Q≤1051\le Q\le 10^5)个独立查询,每个查询的形式如下:

给定四个整数 aa,bb,cc,dd(−1018≤a,b,c,d≤1018-10^{18}\le a,b,c,d\le 10^{18})。在一次操作中,你可以执行 a+=ba\mathrel{+}=b,或 b+=ab\mathrel{+}=a。求将 (a,b)(a,b) 转变为 (c,d)(c,d) 所需要的最小操作次数,或者如果不可能完成,输出 −1-1。

输入格式(从终端 / 标准输入读入):

输入的第一行包含 QQ。

以下 QQ 行,每行包含四个整数 aa,bb,cc,dd。

输出格式(输出至终端 / 标准输出):

每行输出一个查询的答案。

输入样例:


4
5 -3 -1 -3
5 3 5 2
5 3 8 19
5 3 5 3

输出样例:


2
-1
3
0

第一个查询:(5,−3)→(2,−3)→(−1,−3)(5,-3)\to (2,-3)\to (-1,-3)。

第二个查询:不可能。

第三个查询:(5,3)→(8,3)→(8,11)→(8,19)(5,3) \to (8, 3) \to (8, 11) \to (8, 19)。

第四个查询:不需要任何操作。

测试点性质: 测试点 2:∣a∣,∣b∣,∣c∣,∣d∣≤10|a|, |b|, |c|,|d|\le 10。测试点 3:a,b≥0a,b\ge 0。测试点 4:a≥0≥ba \geq 0 \geq b。测试点 5:a≤0≤ba \leq 0 \leq b。测试点 6:a,b≤0a,b\le 0。测试点 7:c,d≥0c,d\ge 0。测试点 8:c≥0≥dc \geq 0 \geq d。测试点 9:c≤0≤dc \leq 0 \leq d。测试点 10:c,d≤0c,d\le 0。测试点 11-14:Q≤103Q \leq 10^3。测试点 15-19:没有额外限制。

供题:Benjamin Qi