Leetcode 67 Solution

This article provides solution to leetcode question 67 (add-binary)

https://leetcode.com/problems/add-binary

Solution

class Solution { public: string addBinary(string a, string b) { string c;
auto it1 = a.rbegin(); auto it2 = b.rbegin();
int carry = 0;
while (it1 != a.rend() || it2 != b.rend()) { int val = carry;
if (it1 != a.rend()) { if ((*it1) == '1') val++; it1++; }
if (it2 != b.rend()) { if ((*it2) == '1') val++; it2++; }
if (val >= 2) { val -= 2; carry = 1; } else carry = 0;
c += to_string(val); }
if (carry == 1) c += "1";
reverse(c.begin(), c.end());
return c; } };