AcWing 3554. 二进制
原题链接
简单
作者:
低調ォ是王道
,
2021-05-24 20:00:17
,
所有人可见
,
阅读 299
#include<iostream>
using namespace std;
int main(){
int n;
cin >> n;
while(n -- ){
string str;
cin >> str;
char arr1[32];
int sum = 1;
//00000000000000000000000000000001
for(int i = 31; i >= 0; i --){
sum += str[i] - '0';
arr1[i] = (sum % 2) + '0';
sum /= 2;
}
if(sum == 1) cout << '1';
for(auto c : arr1){
cout << c;
}
cout << endl;
char arr2[32];
sum = 3;
//00000000000000000000000000000011
for(int i = 31; i >= 0; i --){
sum += str[i] - '0';
arr2[i] = (sum % 2) + '0';
sum /= 2;
}
if(sum == 1) cout << '1';
for(auto c : arr2){
cout << c;
}
cout << endl;
// puts(arr1);
// puts(arr2);
}
return 0;
}