【second】Add Binary
string addBinary(string a, string b) { // Note: The Solution object is instantiated only once and is reused by each test case. int m = a.size(); int n = b.size(); string res(max(m,n)+1,'0'); int i = m-1,j=n-1; int carry = 0; int k = res.size()-1; while(i>=0||j>=0||carry>0) { int num1 = (i<0?0:a[i]-'0'); int num2 = (j<0?0:b[j]-'0'); int sum = num1+num2+carry; res[k] += sum%2; carry = sum>>1; --i; --j; --k; } if(res[0]!='0') return res; else return string(res.begin()+1,res.end()); }