#NC2503J. Jetton

Jetton

题目描述

Yuki 和 Ena 在打某回合制扑克游戏。

初始时,Yuki 有 x x 个筹码,Ena 有 y y 个筹码。每回合会确定该回合的获胜方,确定方式如下:

  • 若 Yuki 的筹码量和 Ena 的筹码量不相等,则筹码量较少的一方为获胜方;
  • 若 Yuki 的筹码量和 Ena 的筹码量相等,则 Yuki 为获胜方。

另一方需要向获胜方支付的筹码量等同于获胜方所持有的筹码量。

当某一方的筹码量变为 00 时,游戏立即结束。请求出游戏是否会在有限回合内结束。特别地,若游戏会结束,则你还需要求出游戏从开始到结束历经的回合数。

输入格式

本题单个测试点内有多组数据。第一行仅包含一个整数 t t 1t105 1 \leq t \leq 10^5 ),表示测试数据组数。每组测试数据的格式如下。

输入的第一行,也是唯一一行,包含两个正整数 x x y y 1x,y109 1 \leq x, y \leq 10^9 ),表示 Yuki 和 Ena 初始的筹码数。

输出格式

对于每组测试数据,输出一行一个整数;若游戏能够在有限回合内结束,输出一行一个整数表示回合数;否则仅输出 -1 即可。

5
100 100
30 90
15 55
11 4514
2 126
1
2
-1
-1
6

解释 #1

对于第一组数据,第一回合中 Yuki 和 Ena 的筹码量都为 100100,因此 Yuki 为获胜方。Yuki 的筹码量变为 100+100=200 100 + 100 = 200 ,Ena 的筹码量变为 100100=0 100 - 100 = 0 。此时,游戏立即结束,经过的回合数为 11

对于第二组数据,第一回合中 Yuki 的筹码量为 3030,Ena 的筹码量为 9090,Yuki 的筹码量较少,因此 Yuki 为获胜方。Yuki 的筹码量变为 30+30=60 30 + 30 = 60 ,Ena 的筹码量变为 9030=60 90 - 30 = 60 。第二回合中,Yuki 的筹码量和 Ena 的筹码量都为 6060,同理,经过的回合数为 22

对于第三组数据,可以证明游戏不能在有限回合内结束。