反向位整数
序号:#30难度:一般时间限制:1000ms内存限制:10M
描述
输入32位无符号整数,输出它的反向位。 例,输入4626149(以二进制表示为00000000010001101001011011100101),返回2808701440(以二进制表示为10100111011010010110001000000000)。
输入
一个无符号32位整数字符串
输出
一个无符号32位整数,为输入整数的反向位
输入样例
4626149
复制样例
输出样例
2808701440
#include<stdio.h>
using namespace std;
typedef long long ll;
int main()
{ll n;ll m;while(~scanf("%lld",&n)){m=0;for(int i=0;i<32;i++){m|=((1&(n>>i))<<31-i);} printf("%lld\n",m);}return 0;
}