题目描述
输入数据组数t 每组数据输入一个十进制数x(0<x<2^32),将其二进制位反转(共32位),然后输出对应的十进制数
测试数据:
2
2
10
输出:
1
5
#include<bits/stdc++.h>
using namespace std;
int main(){
int t;
int num[32];
cin>>t;
while(t--){
long long int n;
cin>>n;
int i=0;
while(n){
num[i]=n%2;
n=n/2;
i++;
}
int sum=0;
for(int j=0;j<i;j++){
sum=sum*2+num[j];
}
cout<<sum<<endl;
}
}