T792201 【P1178】 - 一个简单的问题

题目描述

众所周知,计算机中存储的数据是二进制形式。我们现在讨论的问题是关于正整数及其二进制形式的。 给定一个正整数$I$,你的任务是找出一个整数$J$,它是大于$I$的最小整数,并且其二进制形式中 '1' 的个数与$I$的二进制形式中 '1' 的个数相同。 例如,如果给定“78”,我们可以写出它的二进制形式“1001110”。该二进制形式中有4个 '1'。大于“1001110”且同样包含4个 '1' 的最小整数是“1010011”,即“83”,所以你应该输出“83”。

输入格式

每行一个整数,表示 $I$(1

输出格式

每行一个整数,表示$J$。

说明/提示

$50\%$ 的数据满足:测试数据组数