本文共 828 字,大约阅读时间需要 2 分钟。
题目描述
给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。
示例 1:
输入: a = “11”, b = “1”
输出: “100”来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/add-binary 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。C++
class Solution { /* 先将a,b位补齐,再加法运算 */public: string addBinary(string a, string b) { string res; if(a.size()>b.size()) { int len=a.size()-b.size(); for(int i=0;i=0;i--){ int temp=a[i]-'0'+b[i]-'0'+flag; if(temp>=2){ temp=temp%2; res.insert(res.begin(),temp+'0'); flag=1; }else { res.insert(res.begin(),temp+'0'); flag=0; } } if(flag){ res.insert(res.begin(),'1'); } return res; }};