思路:
字符串转换成十进制后分别做加法,然后转换成二进制即可。
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
typedef long long LL;
void output(LL n)
{
for (int i = 32; i >= 0; i -- )
{
int t = n >> i & 1;
if (!t && i == 32) continue; //判断最高位是否有进位
cout << t;
}
puts("");
}
int main()
{
int T;
cin >> T;
while (T -- )
{
LL n = 0;
string s;
cin >> s;
for (auto c: s) n = n * 2 + c - '0';
output(n + 1);
output(n + 3);
}
return 0;
}