#lg11846. [USACO25FEB] Transforming Pairs P

    ID: 2590 传统题 2000ms 256MiB 尝试: 5 已通过: 1 难度: 10 上传者: 标签>数学最大公约数 gcd分类讨论NOI/NOI+/CTS

[USACO25FEB] Transforming Pairs P

[AdditionalFile4812.zip](file://AdditionalFile4812.zip?type=additional_file)

#4812. 「USACO 2025.2 Platinum」Transforming Pairs

标签: 传统 | 时间限制: 2000 ms | 内存限制: 256 MiB |

题目描述

题目来自 USACO 2025 February Contest, Platinum Problem 2. Transforming Pairs

回答 QQ1Q1051\le Q\le 10^5)个独立查询,每个查询的形式如下:

给定四个整数 aabbccdd1018a,b,c,d1018-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 行,每行包含四个整数 aabbccdd

输出格式

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

样例

输入

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)

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

测试点性质

  • 测试点 22a,b,c,d10|a|, |b|, |c|,|d|\le 10
  • 测试点 33a,b0a,b\ge 0
  • 测试点 44a0ba \geq 0 \geq b
  • 测试点 55a0ba \leq 0 \leq b
  • 测试点 66a,b0a,b\le 0
  • 测试点 77c,d0c,d\ge 0
  • 测试点 88c0dc \geq 0 \geq d
  • 测试点 99c0dc \leq 0 \leq d
  • 测试点 1010c,d0c,d\le 0
  • 测试点 111411\sim 14Q103Q \leq 10^3
  • 测试点 151915\sim 19:没有额外限制。

供题:Benjamin Qi