600124 - 魔法瓶
有两个魔法瓶,它们可以装下无限多的牛奶。开始时A瓶里有m升牛奶,B瓶里有n升牛奶;每次你可以从A瓶向B瓶子倒x升牛奶,0 \le x \le m ,且x为整数,或从B瓶向A瓶倒y升牛奶,0 \le y \le n ,且y为整数。每当倒完一次牛奶后两个魔法瓶都会施展魔法使得自身盛装的牛奶变为原来的两倍。使得一个瓶子里的牛奶变为k升最少需要倾倒多少次?
输入
第一行,一个正整数t,表示测试数据组数。
接下来t行,每行三个正整数,分别表示m、n、k。
对于100%的数据:
1 \le t \le 10^3;
1\le m+n,k \le 10^{18}。
输出
每组数据输出一行,表示使得一个瓶子内的牛奶为k升最少需要倾倒多少次牛奶,若无法达到目标则本行输出-1。
样例
输入
2 3 1 1 4 4 2
输出
0 1
提示
第一组询问无需操作就达到了目标。
第二组询问使得一个瓶子剩余1升,另一个瓶子变为7升,瓶子施展魔法变为2升和14升。