67. Add Binary
#include <string>
#include <stack>
#include <vector>
#include <map>
#include <algorithm>
using namespace std;
string addBinary(string a, string b) {
int carry = 0;
int len = a.size() > b.size() ? a.size() : b.size();
string res;
for (int i = 0; i < len; i++) {
int na = i < a.size() ? (a[a.size() - 1 - i] - '0') : 0;
int nb = i < b.size() ? (b[b.size() - 1 - i] - '0') : 0;
int sum = na + nb + carry;
res =to_string(sum % 2)+res;
carry = sum / 2;
}
if (carry) res = '1' + res;
return res;
}
int main() {
string b = "11";
string a = "11";
string re = addBinary(a, b);
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· .NET开发智能桌面机器人:用.NET IoT库编写驱动控制两个屏幕
· 用纯.NET开发并制作一个智能桌面机器人:从.NET IoT入门开始
· 一个超经典 WinForm,WPF 卡死问题的终极反思
· ASP.NET Core - 日志记录系统(二)
· 支付宝事故这事儿,凭什么又是程序员背锅?有没有可能是这样的...
· 在线客服系统 QPS 突破 240/秒,连接数突破 4000,日请求数接近1000万次,.NET 多
· C# 开发工具Visual Studio 介绍
· 在 Windows 10 上实现免密码 SSH 登录
· C#中如何使用异步编程