给定一个正整数n,求最小的、比n大得正整数m,使得m与n的二进制表示中有相同数目的1,举个例子,假定给定的n为78,,其二进制表示为1001110,包含4个1,那么最小的比n大得并且二进制表示中包含4个1的数是83,其二进制是1010011,因此83就是答案。
输入若干行,每行一个数n(1<=n<=1000000),输入"0"则结束
若干行对应的值
1 2 3 4 78 0
2 4 5 8 83