#include <iostream>
#include <string>
#include <bitset>
std::string addBinaryStrings(std::string a, std::string b) {
int num1 = std::stoi(a, nullptr, 2);
int num2 = std::stoi(b, nullptr, 2);
int sum = num1 + num2;
return std::bitset<16>(sum).to_string();
}
int main() {
std::string a = "11";
std::string b = "1";
std::cout << addBinaryStrings(a, b) << std::endl;
a = "1010";
b = "1011";
std::cout << addBinaryStrings(a, b) << std::endl;
}
/*
run:
0000000000000100
0000000000010101
*/