当前位置: 首页 > news >正文

C语言 | Leetcode C语言题解之第67题二进制求和

题目:

题解:

void reserve(char* s) {int len = strlen(s);for (int i = 0; i < len / 2; i++) {char t = s[i];s[i] = s[len - i - 1], s[len - i - 1] = t;}
}char* addBinary(char* a, char* b) {reserve(a);reserve(b);int len_a = strlen(a), len_b = strlen(b);int n = fmax(len_a, len_b), carry = 0, len = 0;char* ans = (char*)malloc(sizeof(char) * (n + 2));for (int i = 0; i < n; ++i) {carry += i < len_a ? (a[i] == '1') : 0;carry += i < len_b ? (b[i] == '1') : 0;ans[len++] = carry % 2 + '0';carry /= 2;}if (carry) {ans[len++] = '1';}ans[len] = '\0';reserve(ans);return ans;
}
http://www.lryc.cn/news/346570.html

相关文章:

  • 油泼辣子在食品类别可以申请成商标不!
  • 深入探索MySQL视图
  • C语言逻辑语句
  • C++青少年简明教程:基础知识
  • [AutoSar]lauterbach_001_ORTI_CPUload_Trace
  • 课程设计 大学生竞赛系统
  • 优先队列全面讲解
  • 即插即用篇 | YOLOv8 引入多光谱通道注意力 | 频率领域中的通道注意力网络
  • Topaz Video AI 5.0.3激活版 AI视频无损缩放增强
  • ppt通过修改幻灯片母版修改页脚
  • 【数组算法】598. 区间加法
  • Java | Leetcode Java题解之第68题文本左右对齐
  • Windows安装MySQL 8.4.0免安装版
  • 初识java--javaSE(3)--方法,递归,数组,
  • AWS ECS Fargate: 如何获取正在运行的服务
  • Rust 常用 Web 开源代码库
  • 零代码平台助力中国石化江苏油田实现高效评价体系
  • [优选算法]------滑动窗⼝——209. 长度最小的子数组
  • 简述a标签target属性的取值和作用
  • uniapp管理后台编写,基于uniadmin和vue3实现uniapp小程序的管理后台
  • FFmpeg常用API与示例(四)——过滤器实战
  • 解决springboot项目的网站静态页面显示不全问题
  • 表面的相似,本质的不同
  • 问题:幂等性 分布式session
  • Golang | Leetcode Golang题解之第66题加一
  • c++ STL 之栈—— stack 详解
  • 鸿蒙开发接口Ability框架:【(窗口扩展能力)】
  • AutoCAD中密集的填充打散后消失的问题
  • 基于Matplotlib的模型性能可视化工作
  • KAN网络最全解析——比肩MLP和Transformer?