题目描述
数轴上有一个人,设他所在的位置为 x,初始时 x=0。第 i 秒中他可以选择往左或往右跳 2i−1 单位长度,即将 x 增大或减小 2i−1。问他至少需要多少秒才能到达 n,即在某一秒结束的时刻使得 x=n。如果永远都不可能到达 n,那么输出 −1。
本题每个测试点中有多组数据。
输入格式
第一行,一个整数,表示数据组数 T。
接下来 T 行,每行一个整数,表示一组测试数据中的 n。
输出格式
共 T 行,每行一个数,依次表示每组数据的答案。
提示
对于 100% 的数据,1≤T≤103,1≤n≤109。
Subtask1(30%):n≤100。
Subtask2(40%):n=2k,其中 k 是一个非负整数。
Subtask3(30%):无特殊限制。
样例说明 1
n=1 时只需要在第一秒中往右跳即可。
n=2 时可以证明永远都不可能到达 n。