某探险队来到雨林探险。雨季来临,让探险队的探险行程格外艰难。
当探险队来到一条湍急的河流旁,才发现河水水位上涨远超预期,已经无法按照预定的方案涉水过河了。队长带领大家制作了一条木筏,为了安全起见,队长决定每次只能安排 M 个人乘坐木筏过河。再安排 1 个人把木筏划回来接其他人。
已知探险队共有 N 人,木筏从河的一边划到另外一边需要 1 分钟,往返一次需要 2 分钟。假设开始运送队员过河之后,木筏不会停下来,上下木筏的时间忽略不计,请编程计算出,当所有人都被运送到河对岸,需要几分钟?如果无论如何都无法将所有人运送到对岸,请输出 -1。
第 1 行输入一个整数 T ,表示测试数据组数。
接下来 T 行,每行输入 2 个整数 M,N,两个数字之间用空格隔开。
输出 T 行,每行输出一个整数,代表对于每组测试数据计算的结果。
5 3 28 12 80 11 81 1 4 31 91
27 15 15 -1 5
8 88 89 5 15 1 58 44 72 93 93 4 79 62 82 12 22
3 7 -1 3 1 51 3 3
12 8 79 20 40 46 84 2 32 22 22 1 7 13 33 12 30 3 17 72 76 10 30 51 63
23 5 3 61 1 -1 5 5 15 3 7 3
对于 10\% 的数据 1 \le T \le 10,1 \le M = N \le 100。
对于 30\% 的数据,1 \le T \le 100,1 \le M \le N \le 100。
对于 70\% 的数据,1 \le T \le 10^4,1 \le M \le N \le 10^5。
对于 100\% 的数据,1 \le T \le 10^5,1 \le M \le N \le 10^9。