添加 n 个二进制字符串?

2023年 8月 27日 89.0k 0

添加 n 个二进制字符串?

在这个程序中,我们需要给定二进制数并进行相加。有n个二进制数,我们需要将它们全部相加,得到一个二进制数作为输出。

为此,我们将使用二进制加法逻辑,逐个将1到N的所有项相加以获得结果。

Input: "1011", "10", "1001"
Output: 10110

登录后复制

说明

更简单的方法是将二进制字符串转换为其十进制等值,然后将它们相加并再次转换为二进制。这里我们将手动进行添加。
我们将使用一个辅助函数来添加两个二进制字符串。该函数将针对 n 个不同的二进制字符串使用 n-1 次。

示例

#include
using namespace std;
string add(string b1, string b2) {
string res = "";
int s = 0;
int i = b1.length() - 1, j = b2.length() - 1;
while (i >= 0 || j >= 0 || s == 1) {
if(i >= 0) {
s += b1[i] - '0';
} else {
s += 0;
}
if(j >= 0) {
s += b2[j] - '0';
} else {
s += 0;
}
res = char(s % 2 + '0') + res;
s /= 2;
i--; j--;
}
return res;
}
string addbinary(string a[], int n) { string res = "";
for (int i = 0; i < n; i++) {
res = add(res, a[i]);
}
return res;
}
int main() {
string arr[] = { "1011", "10", "1001" };
int n = sizeof(arr) / sizeof(arr[0]);
cout

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论