问题 5888 --熊博士吃糖果

5888: 熊博士吃糖果★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 44  解决: 29
[提交][状态][命题人:]

题目描述

众所周知,熊博士非常喜欢吃糖果。最近,雄博士又买了一大袋糖果,共n颗,共吃了k天,当第k+1天熊博士想吃糖果时,他发现一颗都没有了。熊博士记得第1天吃了x颗糖果,第2天吃了2x颗糖果,第3天吃了4x颗糖果,以此类推,第k天熊博士吃了2k-1x颗糖果,正好将n颗糖果全部吃完。可是,熊博士不记得xk的值具体是多少,但他确信xk都是正整数且k>1.

如果你能够告诉熊博士他第一天所吃的糖果数量x,熊博士能够找到一个大于1的整数k,使得x+2x+4x+⋯+2k-1x正好等于n,熊博士就会非常开心。请问:第一天熊博士吃了多少个糖果?

所有测试数据确保至少存在一个解。如果存在多组解,请输出k值最小所对应的x的值,即熊博士在最短的时间内可以吃完所有糖果所对应的x值。

输入

        第一行一个整数t(1≤t≤10000):测试用例数;

        每个测试用例一行一个整数n(3≤n≤109):熊博士所吃的糖果总数。

输出

       共t行,每个测试用例一行一个整数x:熊博士第一天所吃的糖果数量x,使得熊博士能找到一个大于1的整数k,使得x+2x+4x+⋯+2k-1x=n,即熊博士k天正好吃完n颗糖果。

样例输入
Copy
7
3
6
7
21
28
999999999
999999984
样例输出
Copy
1
2
1
7
4
333333333
333333328

提示

来源

 

[提交][状态]