addBinary
class Solution {
public:
string addBinary(string a, string b) {
int l = a.size()>b.size()? a.size() : b.size();
int al = a.size();
int bl = b.size();
int m=0,n=0,carry=0,val=0;
string ret;
reverse(a.begin(),a.end());
reverse(b.begin(),b.end());
for(int i = 0;i<l;i++){
m=i<al ? a[i]-'0' : 0;
n = i<bl? b[i]-'0':0;
val = (m+n+carry)%2;
carry = (m+n+carry)/2;(carry 和val顺序调换了)
ret.insert(ret.begin(),val+'0');
}
if(carry==1)
ret.insert(ret.begin(),'1');
return ret;
}
};
Last updated
Was this helpful?