auto-generated entry for Add Binary. the solution files are available below.
solution files
- C++
add-binary/synced-solution.cpp - Python
add-binary/synced-solution.py - TypeScript
add-binary/synced-solution.ts
Collected C++, Python, TypeScript solutions for add binary. Add a dedicated write-up later if you want deeper notes.
auto-generated entry for Add Binary. the solution files are available below.
add-binary/synced-solution.cppadd-binary/synced-solution.pyadd-binary/synced-solution.tsclass Solution:
def addBinary(self, a: str, b: str) -> str:
return bin(int(a, class="syntax-number">2) + int(b, class="syntax-number">2))[class="syntax-number">2:]
class Solution {
public:
string addBinary(string a, string b) {
string res = class="syntax-string">"";
int carry = class="syntax-number">0, i = a.size()-class="syntax-number">1, j = b.size()-class="syntax-number">1;
while (i >= class="syntax-number">0 || j >= class="syntax-number">0 || carry) {
int sum = carry;
if (i >= class="syntax-number">0) sum += a[i--] - class="syntax-string">'class="syntax-number">0';
if (j >= class="syntax-number">0) sum += b[j--] - class="syntax-string">'class="syntax-number">0';
res = char(class="syntax-string">'class="syntax-number">0' + sum%class="syntax-number">2) + res;
carry = sum / class="syntax-number">2;
}
return res.empty() ? class="syntax-string">"class="syntax-number">0" : res;
}
};
function addBinary(a: string, b: string): string {
return (BigInt(class="syntax-string">'0b' + a) + BigInt(class="syntax-string">'0b' + b)).toString(class="syntax-number">2);
}