给定一个 32 位无符号整数 N,将 N 的二进制表示(按 32 位 表示,不省略前导零)进行高位与低位翻转,即将其 32 位二进制串 整体反转 后得到一个新的二进制数。请你输出该反转后二进制数对应的十进制值。
特殊要求:
①禁止使用循环结构
②禁止使用任何STL相关容器(包括 string/bitset 等)
输入一个整数 N。
输出一个整数,表示将 N 的 32 位二进制表示反转后得到的十进制值。
6
1610612736
0 ≤ N ≤ 2³² − 1
说明:
必须按 32 位二进制表示处理;
若最高位为 0,也需要参与翻转;
输出结果仍视为 32 位无符号整数。
提示:
尝试使用 位运算 和 二路归并 的思路