#TCTM1767. 有趣的数学题

0

有趣的数学题

有趣的数学题

题目描述

输入一个正整数 $N$,求最小的比 $N$ 大的正整数 $M$,使得 $M$ 与$N$的二进制表示中有相同数目的 $1$。 举个例子,假如给定的 $N$为 $78$,其二进制表示为 $1001110$,包含 $4$ 个 $1$,那么最小的比 $N$ 大的并且二进制表示中只包含 $4$ 个 $1$ 的数是 $83$,其二进制是 $1010011$,因此 $83$ 就是答案。

输入格式

输入若干行,每行一个数 $n$,输入"$0$"结束。

输出格式

输出若干行对应的值。
1
2
3
4
78
0
2
4
5
8
83

提示

#### 数据范围与提示: $1\le n\le 1000000$

来源

童程童美